수평 확장+무상태 설계 원칙 설명으로 결
스케일러블한 시스템을 만들기 위해 서버를 늘려도 동작이 일관되게 유지되는 무상태 설계가 기본이 됩니다. 서버가 클라이언트의 세션 정보를 직접 갖고 있으면 수평 확장이 어려워집니다. 세션을 외부 저장소에 두고 서버는 상태를 갖지 않는 구조로 만들면 서버를 추가해도 요청을 어디서든 처리할 수 있습니다. 장애 허용을 위해서는 단일 장애 지점을 없애는 것이 핵심입니다. 로드밸런서를 통해 트래픽을 분산하고, 서비스 하나가 다운되어도 다른 인스턴스가 처리할 수 있도록 복수 구성을 유지합니다.
헬스 체크와 자동 재시작 설정이 장애 허용 시스템의 기본 요소입니다. 이론만으로 이해하던 것이 프로젝트에서 직접 구성해보니 각 설정의 의미가 다르게 다가왔습니다.