리밸런스 리스너 활용이 궁금합니다.
210
아리마
작성한 질문수 76
0
강사님 안녕하세요.
스프링 카프카로 공부를 하는 중, 궁금증이 생겨서 문의를 드립니다.
@KafkaListner 를 사용해서 컨슈머 리스너를 구현하였습니다.
리밸런스가 일어날 때, 메시지 중복 처리 발생을 막기 위한 예제를 직접 만들어 보고있는데요.
500개 레코드를 Poll 해온 뒤, 300번째 정도 레코드를 읽었을 때 Rolling Update 가 진행되도록 상황을 만들어서
리밸런싱이 발생하도록 하였습니다.
스프링 카프카에서 제공되는 ConsumerAwareRebalanceListener 를 이용하면 리밸런스가 일어날 때
onPartitionRevokedBeforeCommit 와 AfterCommit 함수를 이용해서 300번째까지 처리한 오프셋으로
수동 커밋을 해줄 수 있을 것 같던데요.
궁금한 것은 현재 300번째까지 처리했다라는 오프셋 값을 어떻게 얻을 수 있는지 모르겠습니다.
onPartitionRevokedBeforeCommit 의 인자로 넘어오는 Consumer 객체나 TopicPartition 객체에는
500개 레코드를 Poll 해온 시점의 offset 값은 있지만 현재 처리한 시점의 offset 값은 없는 것 같더라고요.
강사님 혹시 답을 알고 계실까요?
답변 1
카프카 ISR 개념 부분 질문
0
487
1
카프카 커넥터를 두가지 사용하는 이유
0
909
1
브로커, 토픽, 파티션관계
0
687
1
커넥트(소스), 커넥트(싱크)
1
546
1
카프카 isr 질문 있어요
0
340
1
파티션 질문 있어요
0
393
1
명령어 관련 문의드립니다.
0
436
2
토픽의 레코드가 라운드로빈으로 배정되는 방식 질문있습니다.
0
435
2
레코드에 json 형태의 데이터 넣는법 질문
0
436
2
카프카 도커로 실행
1
447
1
CCDAK 질문입니다!
0
1368
1
스트림즈 조인에 관련해서 질문드립니다.
0
307
1
min.insync.replicas에서 설정값만큼의 브로커 다운시
0
259
1
브로커로 메시지를 보낼때 null값인 경우
0
475
1
zookeeper 실행시 에러
1
788
1
온프레미스 환경 설치에 대해 질문있습니다.
0
358
1
리밸런싱 시, 메시지 중복 처리 문제
0
1074
1
강사님, Idempotence / transaction의 차이가 궁금합니다.
0
377
1
브로커 장애 발생시 질문
0
339
1
에러 핸들링과 관련하여 질문 드립니다
0
316
1
토픽 생성시 파티션이 배치되는 방법
0
367
1
질문있습니다!
0
141
1
카프카 스트림즈 에러 핸들링 질문 드립니다
0
402
1
카프카 클러스터 질문이 있습니다.
0
186
1





