목록 보기
redis sync 문제 해결하기
백엔드

redis sync 문제 해결하기

what's min
what's min
2024년 12월 23일

두줄요약

Redis Cluster에서 `keys` 명령어로 인해 replica 동기화가 반복 실패하는 문제를 분석했습니다. `scan` 사용과 버퍼 제한 설정 점검으로 재발 방지 포인트를 정리했습니다.

문제 상황

  • 3대 마스터, 3대 replica로 구성된 Redis Cluster에서 replica 동기화가 반복적으로 끊김
  • 팀원 한 명의 keys 명령어 사용 이후 master-replica 연결이 끊기고 재동기화가 계속 발생

원인 분석

  • keys 사용으로 대량 응답이 발생하면서 replica의 client output buffer가 빠르게 증가
  • master의 client-output-buffer-limit slave 한도에 걸려 replica 연결이 종료
  • cluster sync 중 BGSAVE와 full resync가 반복되며 재시도 비용이 누적

해결 방법

  • keys 대신 scan 사용으로 대량 조회 방식 변경
  • replica sync 상황과 Redis 로그, info replication, cluster info, cluster nodes로 원인 확인
  • Redis Cluster에서 client-output-buffer-limitmaxmemory 설정 관계 재점검

댓글 0

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...