반응형
1) 모니터링
1-1. 네 가지 숫자
- Throughput : 들어오고/나가는 메시지 양 (bytes/sec, records/sec)
- Error : 프로듀서/컨슈머 에러율
- Lag/Latency
- Saturation : 브로커가 바쁨 (Idle% 낮은 경우), 디스크가 꽉 참 (사용량 높은 경우)
지표 몇가지
1. URP > 0 : 불완전 복제 파티션이 있으니 확인 필요
2. RequestHandlerIdle %가 계속 0.3보다 작은 경우 : 브로커 과부화 가능성
3. Consumer Lag이 업무 시간에 계속 증가 : 처리 병목
1-2. SLO란?
- SLI (무엇을 측정하는가) : 특정 메시지가 3초 안에 처리되는 비율
- SLO (목표) : 영업 시간에 99.9%는 3초 안에 끝낸다
- 알람 : 3초 넘는 구간이 5분 이상 지속되면 알림
1-3. 클라이언트에서는 무엇을 볼까?
- Producer : 재시도 획수, 에러율 (재시도 성공도 포함)
- Consumer : 최대 랙, 리밸런스 빈도, 처리 지연
- Lag = 0인데 느린 경우 : 앱 내부 처리 지연일 때가 많다 -> E2E 시간을 애플리케이션 지표로 찍어두자
2) 스트림 처리
2-1. 시간
- 윈도우 : "5분 동안 모아서 집계"와 같은 개념
- 지연 데이터 (grace) : 늦게 들어온 이벤트를 얼마나 더 받아줄지
- 예 : 5분 윈도우 + grace 10분 -> 윈도우 닫히고 10분 안에 늦게 들어와도 다시 계산한다
- grace가 지나면 버린다
2-2. 키
- 조인/그룹바이 전에 키가 바뀌면 카프카가 repartition 토픽을 만들어서 데이터를 다시 섞는다 -> I/O 비용이 크다
- 가능하면 업스트림에서 키를 맞춰서 보낸다
2-3. 상태
- EOS : 컨슘 오프셋 커밋 + state 업데이트 + 아웃풋을 한 번에 커밋
- 단 EOS가 외부 시스템 호출의 중복까지 자동 해결해주지는 않는다
반응형
'독서' 카테고리의 다른 글
| [카프카 핵심 가이드] Ch 11, Ch 12 (1) | 2025.08.31 |
|---|---|
| [카프카 핵심 가이드] Ch 09, Ch 10 (1) | 2025.08.24 |
| [카프카 핵심 가이드] Ch 05, Ch 06 (3) | 2025.08.10 |
| [카프카 핵심 가이드] Ch 04 (3) | 2025.08.03 |
| [카프카 핵심 가이드] Ch 03 (2) | 2025.07.27 |