consumer가 `user_created` offset을 읽습니다.
Kafka 이벤트는 실패해도 같은 결과로 수렴해야 한다
브로커에 이벤트가 남아 있기 때문에 소비자는 다시 읽을 수 있습니다. 그래서 재시도, 중복 처리, DLQ 규칙을 함께 정해야 합니다.
환영 메일 발송처럼 외부 작업을 수행합니다.
네트워크 오류는 지연 후 다시 처리합니다.
형식 오류나 영구 실패는 별도 토픽으로 보냅니다.
같은 이벤트가 두 번 와도 결과가 한 번 처리된 것과 같아야 합니다.
업무 처리가 끝난 뒤 읽은 위치를 확정해야 손실을 줄입니다.
죽은 편지 토픽은 알림과 재처리 도구가 함께 있어야 합니다.
운영 기준: Kafka는 메시지를 오래 보관해주지만, 실패한 이벤트를 어떻게 다시 처리할지는 애플리케이션 계약으로 정해야 합니다.