Junyoung Yang

GRIT 모니터링 구성: Prometheus + Loki + Grafana + Spring Actuator

목적 GRIT 프로젝트를 진행하면서 기능을 붙이다 보니, 어느 순간부터는 운영 관점에서 확인할 지점이 늘어났다. 문제가 생겼을 때 경험에 의존하기보다는, 숫자와 로그로 확인할 수 있는 형태가 필요했다. 서비스 상태를 수치로 확인할 수 있는 상태 장애나 이슈가 났을 때 로그를 빠르게 모아 볼 수 있는 상태 그래서 메트릭은 Promethe...

멀티 인스턴스 환경에서 채팅 메시지가 유실되는 문제 해결

문제 발견 카카오테크캠퍼스 최종 프로젝트에서 팀 채팅 기능을 WebSocket으로 구현했다. 로컬에서 테스트할 때는 아무 문제가 없었다. 그런데 AWS ECS에 배포하니까 오토스케일링으로 인스턴스가 2개 이상이 되면서 문제가 발생했다. A 사용자가 보낸 메시지가 B 사용자에게 도착하지 않았다 메시지 일부가 누락되는 경우가 있었다 원인 ...