1. 개요

이 보고서는 기존의 Spring 내장 이벤트 시스템을 사용하던 Reservation 도메인을 Kafka 기반의 이벤트 처리 구조로 전환한 리팩토링 과정을 정리한 문서이다.

이번 구조 개선의 핵심 목표는 다음과 같다.

이를 위해 Kafka의 Producer, Consumer, Topic 개념을 Reservation 도메인에 적용하였고 기존 구조와의 차이점, 장단점, 실제 로그 흐름 등을 문서화하였다.


2. Kafka란?

Apache Kafka는 대용량의 실시간 데이터를 빠르고 안정적으로 처리할 수 있도록 설계된 분산 스트리밍 플랫폼이다. 일반적인 메시지 큐 시스템과 유사한 구조를 가지고 있지만, 훨씬 더 강력한 처리 성능과 확장성, 복구 능력을 제공한다.

Kafka는 다음과 같은 특징을 갖는다:

2.1 Kafka의 주요 구성 요소