[KAFKA] Consumer Offset Commit Strategies


[KAFKA] Consumer Offset Commit Strategies

enable.auto.commit True 오토 커밋을 true로 하게 되면 배치가 동시에 처리된다. 컨슈머 API를 사용할 때 오프셋이 정기적으로 커밋 된다. At Least Once가 특정 상황에서 기본적으로 활성화된다. poll 함수가 코드에 호출될 때 항상 커밋 된다. 그러면 auto.commit.interval.ms의 간격마다 오프셋을 비동기적으로 커밋 한다. 이때 poll을 호출하기 전에 모든 메시지를 처리해야 된다. 처리하지 못하게 되면 메시지가 손실이 된다. 커밋 한 오프셋부터 데이터를 읽기에 그전 오프셋에서 문제가 발생한 데이터는 읽지 못함 이를 위해서 enable.auto.commit을 비활성화한 다음에 어디까지 처리되었는지에 따라 commitSync or commitAsync를 호출해야 된다. https://www.conduktor.io/kafka/delivery-semantics-for-kafka-consumers/ 위와 같이 Poll을 한 뒤 시간이 지나면 비...


#카프카

원문링크 : [KAFKA] Consumer Offset Commit Strategies