TIL
2025.04.08 kafka-consumer-throttling
Gisungcu
2025. 4. 9. 00:03
카프카 컨슈머에 동적 쓰로틀링 적용하기 | 우아한형제들 기술블로그
이 글은 카프카(Kafka)를 사용하는 스프링 환경에서 메시지 처리 속도를 동적으로 조절해야하는 상황과 여러 쓰로틀링 기법들을 소개합니다. 카프카를 사용하는 스프링 프레임워크 환경에 익숙
techblog.woowahan.com
백프레셔 개념
record 리스너는 메시지를 단건 단건 처리한다.
poll하는 시점은 max.poll.records만큼 처리하고 난 뒤에 poll을하는게 기본 동작이다.
- commit 시점은 ackmode에 따라 다르다. 기본 batch는 max.poll.records 이후 커밋. record는 하나 처리 후 커밋.
메시지컨테이너에 매번 pause를 사용하면 처음만 pause된다. 이미 pause면 else로 빠져나온다.
그래서 개발자가 원하는 pause time을 못맞출 수 있다.
후반부에 interceptor를 소개하는데 이건 내일..
좋은 글이다.
내 생각은 현재 구조에서 감당가능한데까지 해보고 서드파티을 쓰는게 맞다고 생각한다.