소프트웨어 아키텍쳐에 대한 선언문으로 Reactive System의 특성을 강조한 가이드라인.
문제를 신속하게 탐지하고 효과적으로 대처
신속하고 일관성있는 응답 시간 제공
신뢰할 수 있는 상한선을 설정해서 일관된 서비스 품질을 제공해야함.
오류 처리를 단순화하고 최종 사용자의 신뢰를 구축할 수 있음.
복제, 봉쇄, 격리, 위임등을 실현해야함.
구성 요소를 서로 격리함으로써 시스템 전체를 손상시키지 않고 시스템의 일부에 오류가 발생하고 복구될 수 있도록 보장하여야 한다.
장애에 직면하더라도 응답성을 유지시켜줌.
중앙 집중적이지 않도록 설계
실시간 성능 측정 도구 필요
규모확장 알고리즘 지원
작업량이 변화하더라도 응답성을 유지할 수 있다.
비동기 메시지통신을 통해 느슨한 결합을 유지.
Non-Blocking으로 통신해야 한다.
시스템 오버헤드를 줄일 수 있다.
유연성을 부여하며, 부하관리와 흐름제어를 가능하게 할 수 있다.
요청에 대해서 즉작적으로 응답하고, 장애와 작업량 변화에 대응해서 응답성을 유지해야한다.
이러한 목표를 비동기 Non-Blocking기반의 메시지 큐를 사용해서 통신한다.
