맞는 글이 없어요.
ieunJieun
Deservewhatyouwant.
Reliability — 글
도메인을 구매해도 외부 DNS에서 새 설정을 확인하기까지 시간이 필요했습니다. 즉시 처리할 작업과 DNS 확인 이후의 작업을 분리하고, 연결 상태 확인과 검색 등록 재처리를 자동화했습니다.
배포 대상 서비스를 지정하지 않아 DB와 리버스 프록시까지 재생성되면서 서비스 중단이 반복됐습니다. 어드민에는 블루그린 배포를 적용하고, Caddy는 배포 경로에서 분리해 각 구성 요소에 맞게 중단 원인을 제거했습니다.
메시지 전송 요청에 섞여 있던 FCM 푸시를 전용 워커 큐로 분리했습니다. 요청 처리와 외부 호출의 책임을 나누고, 빈 catch에서 사라지던 실패를 Sentry로 관측할 수 있게 바꾸었습니다.
메신저 부하 테스트에서 오류율이 42.8%까지 높아진 원인을 추적하니 읽지 않은 메시지 수를 갱신하는 쿼리에 교착 상태가 있었습니다. 반복 갱신이 필요했던 unreadCount 대신 마지막으로 읽은 시점인 lastReadAt을 사용하는 구조로 전환했습니다.
Centrifugo의 Pub/Sub 브로커로 KeyDB를 검토했지만, 공개된 멈춤과 교착 상태 이슈에서 운영 위험을 확인했습니다. Valkey와 Sentinel로 전환하고, 10만 연결 부하와 페일오버 테스트로 동작을 검증했습니다.
긴 브라우저 녹음에서 메모리 증가와 크래시 손실, 음성 인식 품질과 수동 처리 흐름이 문제였습니다. 5분 단위 저장과 클라우드 직접 업로드를 도입하고, 전사·회의록 요약·실시간 전달까지 이어지는 파이프라인을 구축했습니다.