패스잇
시스템 설계 · 중급

대용량 트래픽 환경에서 데이터베이스의 읽기 성능을 향상시키기 위한 Read Replica(읽기 전용 복제본)의 동작 원리와 주요 고려사항에 대해 설명해 주세요.

힌트 · 마스터-슬레이브 구조, 데이터 동기화 방식, 복제 지연(replication lag) 문제를 중심으로 설명하고, 이를 해결하기 위한 방법을 언급합니다.

비동기 복제지연 시간로드 밸런싱데이터 일관성장애 감지

모범답안

Read Replica는 대용량 트래픽 환경에서 데이터베이스 읽기 성능을 향상시키는 효과적인 방법입니다. 마스터 데이터베이스의 변경 사항을 비동기적으로 복제하여 읽기 전용 데이터베이스를 여러 개 운영하는 방식이죠.

동작 원리는 간단합니다. 마스터 데이터베이스에 쓰기 작업이 발생하면, 해당 변경 사항이 로그에 기록되고, Read Replica는 이 로그를 읽어 자신의 데이터베이스에 반영합니다. 이렇게 분산된 Read Replica를 통해 읽기 요청을 분산 처리하여 마스터 데이터베이스의 부하를 줄일 수 있습니다.

주요 고려사항은 복제 지연(Replication Lag)입니다. 비동기 복제 방식이기 때문에 마스터 데이터베이스의 변경 사항이 Read Replica에 즉시 반영되지 않아 데이터 불일치가 발생할 수 있습니다. 이를 해결하기 위해 읽기 요청을 분산하는 로드 밸런싱 전략을 세울 때, 사용자 세션 정보를 활용하여 특정 사용자의 읽기 요청은 항상 동일한 Read Replica로 보내거나, 중요한 데이터는 마스터 데이터베이스에서 읽도록 설정할 수 있습니다. 또한, Read Replica의 장애 감지 및 자동 복구 시스템을 구축하여 서비스의 안정성을 확보하는 것도 중요합니다.

읽었다면, 이제 직접 답해볼 차례예요

패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.

함께 보는 대용량 트래픽 설계 면접 질문

← 대용량 트래픽 설계 면접 질문 전체 보기