
분산 시스템 환경에서 Kafka Consumer 오프셋 이동하기
3
AI 요약
이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.
분산 시스템 환경에서 Kafka Consumer 오프셋 이동 및 메시지 재처리
이 게시물은 Spring Kafka를 활용한 Kafka Consumer 오프셋 이동 방법과 분산 시스템 환경에서 무중단 오프셋 변경을 구현하는 과정을 설명합니다.기존 문제와 요구 사항
- 기존에는 컨슈머 중지 후 오프셋 이동이 필요하여 가용성 저하와 지연 발생
- 권한 없이 컨슈머 담당자가 독립적으로 오프셋을 무중단으로 이동할 수 있어야 함
대안 분석과 최종 선택
- 카프카 클러스터 권한 획득, Admin API 사용 모두 컨슈머 그룹 비활성화 필요로 무중단 불가
- Spring Kafka의 ConsumerSeekAware 인터페이스를 이용한 오프셋 이동 기능을 통해 무중단 오프셋 변경 가능
분산 환경 확장
- 오프셋 이동 처리 HTTP API 정의 및 Redis Pub/Sub를 활용한 분산 서버 간 오프셋 변경 요청 전파
- 이를 통해 컨슈머 그룹 전체를 분산 환경에서 효율적으로 제어 가능
추가 기능 및 오픈소스 기여
- 컨슈머 제어 기능 확장 및 Spring Kafka 프로젝트에 오프셋 이동 기능 관련 기여 경험 공유
이 글은 Kafka Consumer 오프셋 재설정의 실무적 문제와 해결책을 구체적 코드 예제와 아키텍처 설계와 함께 제공하여 실시간 데이터 처리 시스템에서의 무중단 오프셋 이동을 구현하는 방법을 안내합니다.