- Consistency, Availability, Partition tolerance
C, A, P 중 2개를 선택해야 한다. (3가지 모두 만족할 순 없음)
- 일관성(Consistency)
- 모든 노드들은 같은 시간에 동일한 항목에 대하여 같은 내용의 데이터를 사용자에게 보여준다.
- 가용성(Availability)
- 모든 사용자들이 읽기 및 쓰기가 가능해야 하며, 몇몇 노드의 장애 시에도 다른 노드에 영향을 미치면 안된다.
- 분할내성(Partition tolerance)
- 메시지 전달이 실패하거나 시스템 일부가 망가져도 시스템이 계속 동작할 수 있어야 한다.
CAP 선택 유형
분류 | 설명 | 예시 |
---|---|---|
C+A | 메시지 손실을 방지하는 강한 신뢰형 |
|
C+P | 모든 노드가 성능을 발휘해야 하는 퍼포먼스형 |
|
A+P | 일관성을 크게 요하지 않는 서비스에 적합 |
|