Day 85 · 3/5
🌳 고급 DB

데이터베이스 복제(Replication) 지연이란?

쉽게 이해하기

본사에서 지점으로 재고를 옮기는데 시간이 걸리는 것과 비슷해요. 본사(마스터)에는 새 상품이 들어왔지만, 지점(레플리카)에는 아직 안 도착한 거죠. 이 시간 차이가 '복제 지연'이에요.

핵심 정리

마스터 DB와 복제본 DB 사이의 데이터 동기화 시간 차이예요.

자세히 알아보기

데이터베이스 복제는 마스터 DB의 데이터를 여러 레플리카 DB로 복사하는 거예요. 읽기 부하를 분산하고, 장애 대응을 위해 많이 쓰죠. 하지만 복제는 즉시 일어나지 않고, 네트워크 지연이나 부하 때문에 시간이 걸려요. 이걸 '복제 지연(Replication Lag)'이라고 해요. 예를 들어, 사용자가 게시글을 작성하면 마스터 DB에 즉시 저장돼요. 하지만 복제본에는 1초 뒤에 반영될 수 있어요. 만약 작성 직후에 레플리카에서 읽으면, 방금 쓴 글이 안 보이는 '쓰기 후 읽기 불일치' 문제가 생겨요. 실무에서는 이걸 해결하려고 '읽기 본인 쓰기(Read Your Writes)' 정책을 써요. 사용자가 방금 쓴 데이터는 마스터에서 읽고, 나머지는 레플리카에서 읽는 거죠. 또는 세션에 '최신 타임스탬프'를 저장해서, 그 시간 이후의 레플리카만 사용하기도 해요. 복제 지연이 길어지면 데이터 불일치가 심해지니까, 모니터링이 중요해요. 보통 지연이 10초 이상 넘어가면 경고를 보내고, 원인을 파악해야 해요.