Community

카프카 에러 핸들링

현업에서 카프카를 사용하면서 에러 핸들링에 대해서 고민을 많이 하고 있습니다. 에러핸들링은 총 3가지 전략이 가능한데요. 1. 무시하기 2. 재시도 3. 데드레처 처리 무시하기는 아무것도 안하는 것이므로 논외로 하겠습니다. 재시도에는 블로킹 재시도와 논블로킹 재시도가 있습니다. 블로킹 재시도 - 블로킹 재시도의 경우는 재시도 완료까지 컨슈밍을 하지 않습니다. - 컨슈밍이 멈추게 되므로 성능에 영향을 줍니다. 대신 안정성이 높습니다. 논블로킹 재시도 - 논블로킹 재시도는 컨슈밍을 중단하지 않습니다. - 좋은점 : 성능 향상, 애플리케이션 안정성 향상 - 안좋은점 : 복잡도 증가, 메시지 중복 가능성, 순서 보장이 안됩니다. 그러므로 논블로킹 재시도를 사용하고자 할 때에는 조심해서 사용해야합니다. 데드레터 처리는 별도의 토픽에 해당 데이터를 저장하여 나중에 꺼내서 처리하도록 하는 방식입니다. 문서는 역시나 공식문서가 최고로 좋았습니다. 자세한 내용은 아래의 링크를 확인해주세요~ https://docs.spring.io/spring-kafka/docs/current/reference/html/#annotation-error-handling

알림

알림이 없습니다