멀티 인스턴스(4파드) 분산 시스템 안정화
4개 파드에서 스케줄러가 동시에 깨어나 배치가 4중 실행되고 있었습니다. 상품 데이터가 4배로 복제되고 알림톡이 같은 사람에게 중복 발송되던 것을 MySQL 네임드 락 기반 공통 실행기로 해결했습니다. 락을 건 커넥션과 푸는 커넥션이 달라져 락이 새던 함정은 원시 커넥션을 고정해서 잡았고, 날짜 기반 락 키를 써서 락이 새더라도 다음 날 자동 회복되게 했습니다.
세션이 파드 로컬 메모리에만 있어서 현장 제어 명령이 1/4 확률로만 전달되던 문제를 RabbitMQ fanout 릴레이로 해결했습니다.
연결 상태 모니터링이 자기 파드가 아는 것만 보여줘서 “현장이 끊겼다”는 오탐이 잦았습니다. 전 IP, 전 파드를 순회해 합산하는 점검 도구를 만들어 보니 단일 조회로 370건이던 연결이 실제로는 727건이었습니다. 운영자가 직접 쓰는 웹 대시보드로 배포해서 이 반복 문의 자체를 없앴습니다.
