Kafka 기반 실시간 파이프라인 구축 경험을 구체적으로 서술
팀 프로젝트에서 사용자 행동 이벤트를 실시간으로 수집하는 파이프라인을 Kafka로 구성하였습니다. 프로듀서가 이벤트를 토픽에 발행하면, 컨슈머가 이를 읽어서 데이터베이스에 적재하는 구조였습니다. 처음에는 컨슈머 그룹 설정을 잘못하여 같은 메시지가 중복 처리되는 문제가 발생하였습니다. 파티션과 오프셋 개념을 다시 정리한 후에 해결하였고, 이론으로 아는 것과 실제로 디버깅하는 것은 전혀 다르다는 것을 그때 배웠습니다. 이후에는 멱등성 처리를 설계 단계에서 미리 고려하는 습관이 생겼습니다.
멱등성을 설계 단계에서 고려하는 것이 스트림 파이프라인의 기본이라는 것을 배웠습니다. 실제로 돌려봐야 이해되는 개념이 있다는 것을 그때 깨달았습니다.