서비스 운영/장애 경험 공유

Keno Kim·2025년 5월 3일

<스터디 관련>

  • Grafana : 운영하고 있는 API 에 대한 대시보드 (언어/프레임워크에 따라 다름)
    • 요청 latency, HTTP status (400, 404, 500)
    • 로그에서도 확인 가능 / 에러 로그
    • 리소스
    • HikariCP 디비 커넥션 풀 (제일 먼저 장애)
    • 스레드 풀
    • JVM GC / heap → 메모리 누수
    • 예를 들어 외부 API 호출하는데 비동기 처리를 안했다 → CPU / 메모리 사용량
    • TPS → 시나리오에 포함하면 좋겠다, 예를 들어, 어제 3시즘에 요청이 많이 있었습니다.
    • 애플리케이션 특수 메트릭 -> 지금 하는거와 어울리지 않음
  • github PR 분석 : (개발자 입장에서) 새로 작성한 코드가 성능 병목이 되는걸 방지
    • 배포마다 성능 테스트를 하면 좋지만.
    • @Transactional 을 비효율적으로 건다던지, event loop 프레임워크인데 블로킹 콜을 한다던지

<일반적인 경험>

  • 사용하는 미들웨어 등 모니터링
    • kafka → 컨슈머 랙
    • 클라우드 서비스 → 서비스별로 모니터링 방법이 있음, cosmosdb = 요청 유닛, 서버리스 (람다) → 모니터링 도구도 클라우드마다 구조가 다 다름 (aws / azure), 모니터링 도구로 봐도 되고 각각 서비스 매트릭을 볼수도 있고
    • databricks -> 파이프라인 구성 모니터링
    • 엔진엑스 / haproxy → 얘네도 장애, 갑자기 느려짐
    • 서버 모니터링 = 잘모름 (저희는 인프라팀에서 함, 거기서 CPU 사용량 높다고 알림)
    • 온프레미스 = (다양한 일이 발생함) 스토리지 전선이 끊어져서 장애난적도 있음.
  • 웹서비스 운영
    • 이메일 인증 = 포함된 이미지 ↔ CDN 블락되서 이메일에 액박이 뜨는 장애
      • 이런거 ‘고객 에이전트’ 로 모니터링 할수 있지 않을까
profile
개발자의 생각 로그

0개의 댓글