분산 시스템의 견고성 (Robustness)
Jan 23, 2026 · Updated Jan 27, 2026
핵심 개념
섹션 제목: “핵심 개념”분산 시스템의 견고성(Robustness)은 링크, 호스트, 사이트 장애나 메시지 손실 등의 실패에도 불구하고 계속 동작할 수 있는 능력이다. 공유 메모리가 없기 때문에 링크, 사이트, 호스트 장애와 메시지 손실을 명확히 구분하기 어렵다.
동작 원리
섹션 제목: “동작 원리”장애 처리 3단계
1 장애 감지
Heartbeat으로 장애 발생 탐지 2 재구성
라우팅 업데이트, 코디네이터 선출 3 복구
복귀 알림 후 테이블 업데이트 1. 장애 감지 (Failure Detection)
섹션 제목: “1. 장애 감지 (Failure Detection)”- Heartbeat 프로시저: 주기적으로 “I-am-up” 메시지 교환
- 일정 시간 내 메시지 미수신 시 “Are-you-up?” 메시지 전송
- 다른 경로로 시도하여 링크 장애 vs 사이트 장애 구분
sequenceDiagram participant A as Site A participant B as Site B A->>B: I-am-up (주기적) B->>A: I-am-up (주기적) A-xB: I-am-up (타임아웃) A->>B: Are-you-up? B->>A: I-am-up (살아있으면)
2. 재구성 (Reconfiguration)
섹션 제목: “2. 재구성 (Reconfiguration)”- 링크 장애: 라우팅 테이블 업데이트를 모든 사이트에 브로드캐스트
- 사이트 장애: 장애 통보, 서비스 사용 중지, 중앙 코디네이터 장애 시 새 코디네이터 선출
- 네트워크 분할(Partition): 도달 불가한 사이트가 있을 경우 두 개의 코디네이터가 충돌할 수 있음
3. 복구 (Recovery)
섹션 제목: “3. 복구 (Recovery)”- 링크 복구: Heartbeat으로 자동 감지하여 재통합
- 사이트 복구: 복귀 알림 후 로컬 테이블 업데이트 (라우팅 정보, 다운 사이트 목록, 미전달 메시지, 트랜잭션 로그 등)
장애 허용 (Fault Tolerance)
섹션 제목: “장애 허용 (Fault Tolerance)”중복 통신 경로, RAID 스토리지, 클러스터링 등으로 구현한다. 성능/기능의 점진적 저하(Graceful Degradation)가 바람직하다.
고속도로 네트워크와 유사하다.. 한 도로가 막히면 네비게이션이 우회로 안내(링크 장애), 한 도시의 물류센터가 문 닫으면 다른 센터가 대신 처리(사이트 장애), 도로가 복구되면 다시 최적 경로로 전환(복구)한다.
관련 개념
섹션 제목: “관련 개념”- 분산 시스템의 확장성 (Scalability) - 견고성과 함께 분산 시스템의 핵심 품질 속성인 확장성
- 분산 시스템의 투명성 (Transparency) - 장애 투명성을 포함한 분산 시스템의 투명성 유형
- 분산 시스템 (Distributed System) - 견고성이 요구되는 분산 시스템의 기본 구조와 특성
- 클러스터 기반 DFS (GFS, HDFS) - 청크 복제로 장애에 대응하는 분산 파일 시스템
- 네트워크 운영체제 vs 분산 운영체제 (NOS vs DOS) - 장애 처리 방식이 다른 NOS와 DOS의 차이