다섯 살도 알 수 있게 · SRE

최종 일관성이 뭐예요?

최종 일관성을, 창고에 막 들어온 물건이 재고판에 조금 늦게 반영되는 이야기로 풀어봤어요.

방금 들어왔어요방금 들어왔는데…재고판매진아까는 매진이라며요?창고엔 막 들어왔는데, 창구 재고판은 아직 옛 숫자예요

창고엔 막 들어왔는데, 창구 재고판은 아직 옛 숫자예요.손님이 '아까는 매진이라며요?' 하고 물어요.

창구 A 재고판매진창구 B 재고판5개 남음아직 맞춰지는 중…복제본끼리 맞추는 데 아주 잠깐 시간이 걸려요

왜: 복제본끼리 맞추는 데 아주 잠깐 시간이 걸려요.복제본끼리 맞추는 데 아주 잠깐 시간이 걸려요.

창구 A매진 (옛 숫자)조금만 기다리면창구 A5개 남음 (맞음)바로 안 맞아도 조금만 기다리면 결국엔 다 같은 숫자가 돼요

바로 안 맞아도 조금만 기다리면 결국엔 다 같은 숫자가 돼요.그 사이엔 살짝 다를 수 있어요.

급하지 않은 정보에 써요안내판 숫자 같은 곳이요
돈 계산엔 안 써요→ 강한 일관성을 써요
얼마나 늦는지 재둬요복제 지연을 알아야 해요
손님에게 미리 안내해요'방금 바뀐 거라 조금 늦을 수 있어요'
t=0 창고 갱신5개 남음t=1 창구 A매진 (옛값)t=3 창구 A5개 남음 (맞음)시간이 조금 지나야 다 같은 숫자가 돼요

시간선: t=0 갱신 → t=1 아직 옛값 → t=3 맞춰짐.시간이 조금 지나야 다 같은 숫자가 돼요.

약속보통 3초 안에 맞춰요그 전엔 조금 다를 수 있어요대체 언제 맞는 거예요?'결국엔'이 얼마나 걸리는지 모르면 손님이 더 헷갈려요 — 그래서 시간 약속이 필요해요

'결국엔'이 얼마나 걸리는지 모르면 더 헷갈려요.그래서 시간 약속이 필요해요.

한 줄로

최종 일관성 = 복제본끼리 바로는 안 맞아도, 조금 기다리면 결국엔 같은 값이 되는 약속. 그 사이엔 살짝 다를 수 있어요.

강한 일관성(모든 복제본이 늘 같은 값)과 대비되는 개념이에요. 복제 지연(replication lag)이 얼마나 되는지 알아두면, 손님에게 '언제쯤 맞는지' 안내할 수 있어요. 돈을 다루는 곳에는 보통 안 쓰고, 캐시나 조회수 같은 급하지 않은 곳에 써요.

어른들은 이렇게 불러요

최종 일관성
Eventual Consistency
조금 늦게라도 결국 맞춰지는 약속. 급하지 않은 정보에 주로 써요.
강한 일관성
Strong Consistency
늘 최신 정답만 보여주는 약속. 돈 다루는 곳에선 이걸 써요. → 정확함과 항상 열림, 둘 다는 못 가져요
복제 지연
Replication Lag
복제본이 원본을 따라잡는 데 걸리는 시간. → 손님 명부를 두 창고에 똑같이
읽기-내-쓰기 일관성
Read-your-writes Consistency
적어도 내가 바꾼 건 나한테는 바로 보이는 약속. 완전한 최종 일관성보다 손님 혼란이 적어요.
벡터 시계
Vector Clock
어느 복제본이 더 최신인지 가리는 이름표 같은 도구. 자세히는 다른 자료에서 다뤄요 — 이름만 알아둬요.
충돌 해결
Conflict Resolution
서로 다른 값이 생겼을 때 하나로 정리하는 규칙. 나중 값 우선, 사람이 직접 고르기 등 방법이 여러 가지예요.
캐시
Caching
자주 묻는 질문을 미리 적어둔 메모판. → 자주 묻는 질문 미리 적어둔 메모판
CAP 정리
CAP Theorem
최종 일관성이 가용성 쪽을 택했을 때 생기는 결과예요. → 정확함과 항상 열림, 둘 다는 못 가져요
다음 이야기
쌍둥이 공원 →
다른 용어도 그림책으로 보고 싶다면 요청하기 →