Infra, DevOps
데이터 일관성, 가용성에 대해 고민하기
CAP 정리「가상 면접 사례로 읽는 대규모 시스템 설계」 책을 보면 CAP 정리에 대한 내용이 나온다. CAP 정리는 데이터 일관성(consistency), 가용성(availability), 파티션 감내(partition tolerance)라는 세 가지 요구사항을 동시에 만족하는 분산 시스템을 설계하는 것은 불가능하다는 정리다. 세 가지 요구사항의 명확한 의미는 아래와 같다. 1. 일관성(consistency): 분산 시스템의 모든 노드가 항상 동일한 데이터를 본다는 것2. 가용성(availability): 분산 시스템에 접속하는 클라이언트는 일부 노드에 장애가 발생하더라도 항상 응답을 받을 수 있어야 한다는 것3. partition tolerance: 네트워크가 끊겨도 시스템은 계속 동작해야 한다는 것..