지난 시간에는 kafka를 설치하여 topic을 발행하고 producer가 메세지를 보내고 consumer가 메세지를 받는 것을 예제를 통해 알아보았다. 이번에는 kafka를 테스트를 했던 CLI 환경이 아닌 springboot app에서 어떻게 사용하는지에 대해 알아보도록 하겠다. 일단 zookeeper 및 kafka 설치는 위의 링크를 따라가서 기본적인 kafka 환경을 구축해 두도록 하자. 예제까지 한번 다 해봤다면 다음은 STS에서 프로젝트를 만드는 것부터 해보도록 하자. 이미 프로젝트가 있고 kafka 연동 추가를 해야 하는 사람은 아래의 kafka dependency만 추가해주면 된다. 1. Spring Starter Project 생성 Spring for Apache Kafka, Spring..
MSA 프로젝트를 진행중인데 API 서버간의 트랜잭션 처리(보상 트랜잭션 이라고도 한다.)를 kafka를 이용해서 하기로 하였다. kafka는 RabbitMQ 처럼 Message Queue를 사용하여 비동기 처리를 가능하게 하는 역할을 담당하고 있고 결합도가 낮고 속도가 빠르다는 장점을 가지고 있어서 최근 MSA를 하는데 있어서 많이 사용된다. 일단은 머리가 좋지 않기에 이론을 공부하기 앞서 kafka를 설치를 해보고 프로토타이핑을 해봄으로써 감을 잡아 나가려고 한다. 갑자기 Docker가 말썽이라 로컬 Windows에 설치를 진행을 하게 되었다. 나중에 Linux 환경에도 다시 설치를 할 계획이다. 환경은 Windows 10 을 사용하고 JDK는 OpenJDK 11을 사용하고 있다. 다운로드 (kafk..