수요(부하)의 변화 및 외부서비스의 가용성 변화에 대해 어떻게 대응할 것인가?
다양한 작업 부하에서 응답성을 유지하는 능력
사용자가 많으면 처리량이 자동으로 증가, 수요가 감소하면 자동으로 감소
평균 지연 시간에 영향 없이 시스템 확장 가능
시스템 실패에도 반응성을 유지할 수 있는 능력
기능 요소 격리 -> 내부 장애 격리 -> 독립성 확보
Akka : Scala 생태계의 일부로 구축. Java 지원
자바 커뮤니티에서 인기를 누리진 못함.
Vert.x : 논블로킹 및 이벤트 기반
공유 데이터 변경
콜백 지옥
멀티 스레딩 이해 필요
Future 클래스 사용 -> 결과값 반환 지연
콜백 지옥 피하기
멀티 스레드 복잡성 숨김
자바 8 - CompletableFuture
컨텍스트 스위칭 문제