IT이야기
Kafka Consumer Lag 해결 방법 — 실무 최적화 가이드
딜레이라마
2026. 4. 28. 09:01
반응형
1️⃣ Kafka Consumer Lag이란?
Apache Kafka 에서 Consumer Lag은
👉 Producer가 보낸 데이터와 Consumer가 처리한 데이터의 차이를 의미합니다.
쉽게 설명하면
Producer → 데이터 생성
Consumer → 데이터 처리
Consumer → 데이터 처리
👉 Consumer가 따라가지 못하면 Lag 발생
2️⃣ Kafka Lag이 발생하는 이유
실무에서 가장 흔한 원인은 다음과 같습니다.
✔ 1. Consumer 처리 속도 부족
- 데이터 처리 로직이 느림
- 외부 API 호출 지연
- DB 쓰기 속도 문제
✔ 2. Partition 수 부족
Kafka는 Partition 기반으로 병렬 처리합니다.
👉 Partition이 적으면 처리 속도가 제한됩니다.
✔ 3. Consumer 수 부족
Consumer 수가 적으면 처리량이 제한됩니다.
✔ 4. GC / 리소스 문제
- JVM GC
- CPU 부족
- 메모리 부족
✔ 5. 네트워크 지연
Kafka 클러스터와 Consumer 간 네트워크 문제
3️⃣ Kafka Lag 확인 방법
Lag은 다음과 같은 방법으로 확인할 수 있습니다.
✔ Kafka CLI
kafka-consumer-groups.sh --describe
✔ 모니터링 도구
- Prometheus
- Grafana
👉 Lag을 시각적으로 확인 가능
4️⃣ Kafka Lag 해결 방법
실무에서 가장 중요한 부분입니다. 🚀
① Consumer 성능 개선
- 처리 로직 최적화
- 비동기 처리 적용
- 배치 처리 도입
② Partition 증가
Partition ↑ → 병렬 처리 ↑ → 처리 속도 ↑
👉 가장 효과적인 방법 중 하나
③ Consumer 수 증가
- Consumer Group 확장
- 병렬 처리 강화
④ 처리 구조 개선
예시
- DB Write → Batch 처리
- API 호출 → 비동기 처리
⑤ 하드웨어 리소스 확장
- CPU 증가
- 메모리 확장
- 네트워크 개선
5️⃣ 실무에서 많이 쓰는 해결 전략
실무에서는 보통 이렇게 해결합니다.
✔ 전략 1: Partition + Consumer 확장
👉 가장 빠른 해결 방법
✔ 전략 2: 처리 로직 개선
👉 근본적인 해결
✔ 전략 3: Batch 처리 도입
👉 DB 부하 감소
✔ 전략 4: 비동기 구조 적용
👉 처리 속도 극대화
6️⃣ Kafka Lag 예방 방법
문제 발생 전에 예방하는 것도 중요합니다.
✔ 충분한 Partition 설계
✔ Consumer 성능 테스트
✔ 모니터링 시스템 구축
✔ Auto Scaling 적용
📌 결론
Kafka Consumer Lag은 단순한 문제가 아니라
👉 시스템 구조 문제일 가능성이 높습니다.
따라서 단순 튜닝이 아니라
아키텍처 관점에서 접근하는 것이 중요합니다.
반응형