
**SPOF(Single Point Of Failure)**는 시스템 내 특정 구성 요소 하나의 장애가 전체 시스템 또는 핵심 기능의 중단으로 이어지는 구조를 의미한다.
즉, 해당 구성 요소가 정상적으로 동작하지 않을 경우 이를 대체하거나 우회할 수 있는 경로가 존재하지 않는 상태를 의미한다.
이 개념은 단순히 “한 개만 존재하는 요소”를 의미하는 것이 아니라, 실질적으로 대체 불가능한 의존성이 존재하는지를 기준으로 판단해야 한다.
예를 들어 물리적으로는 여러 인스턴스가 존재하더라도, 모든 요청이 하나의 특정 경로를 통해서만 처리된다면 해당 지점은 여전히 SPOF로 간주될 수 있다.
결국 SPOF는 "개수"의 문제가 아니라,
구조적으로 단일 실패 지점(single dependency path)이 존재하는가의 문제이다.
💡 SPOF는 "개수"의 문제가 아니라, 구조적으로 단일 실패 지점이 존재하는지의 문제이다.
MSA 환경에서는 시스템이 여러 개의 독립적인 서비스로 분리되어 있기 때문에,
겉보기에는 단일 장애 지점이 제거된 것처럼 보일 수 있다.
그러나 실제로는 다음과 같은 특징으로 인해 SPOF 문제가 더 복잡하게 나타난다.
첫째, 공통 인프라 의존성 증가이다.
서비스는 분리되었지만 API Gateway, 인증 서버, 서비스 레지스트리, 메시지 브로커 등과 같은 공통 인프라에 대한 의존성이 생긴다.