핵심 요약
데브시스터즈가 쿠키런: 킹덤 길드 업데이트 이후 CockroachDB 클러스터에서 발생한 Hot Range 이슈의 원인과 대응, 그리고 임시적인 부하 관리 및 데이터 백업 전략을 회고합니다.
주요 경험
- 길드 업데이트로 PK 기반 데이터의 급증이 발생해 Hot Range가 생겼고, 초기 Split이 충분히 이뤄지지 않아 특정 Range에 부하가 집중되었습니다.
- 신규 노드 추가로 Replication Queue가 가동되며 Range 분할에 따른 부하 분산이 지연되었습니다.
- 로그인 차단과 유저 킥을 분리한 “점검 아닌 점검” 아이디어로 대기열을 활용해 동시 접속자를 점진적으로 제어했습니다.
- 전체 백업이 어렵던 상황에서 테이블 단위 백업으로 데이터 손실 없이 백업을 확보하고 복구 가능성을 높였습니다.
얻은 인사이트
- CockroachDB의 Range 분할과 Hot Range 관리에 대한 사전 설계와 모니터링의 중요성이 큰 교훈으로 남았습니다.
- PK 포맷 변경 등 스키마 변경은 분산 클러스터에 큰 영향을 줄 수 있어 변경 관리가 필수적입니다.
- 대기열 방식은 임시 방편으로 유용하지만, 근본 해결은 노드 관리와 부하 분산 로직의 안정화임을 확인했습니다.
