728x90
- OrderService에 요청된 주문의 수량정보를 CatalogService에 반영하기
- CategoryService(Consumer)
- 의존성 추가

CategoryService.POM.XML 의존성 추가
- Bean 설정 파일 등록

CategoryService.kafkaConsumerConfig 설정파일 추가 - kafkaListenerContainerFactory()
- Topic을 변경사항을 계속 Listening하고 있는 Bean
- consumerFactory()
- ConsumerFactory 정보를 등록하는 Bean
- CatalogService 등록
- 지정된 Topic이 변경이 감지되었을때 실행될 서비스를 작성한다.

CategoryService.KafkaConsumer 추가 - catalogRepository를 주입받는다.
- @KafkaListener를 통해 어떤 Topic에 변경을 감지할지를 작성한다.
- kafka를 통해 메시지를 받아 category에 넣어준다.
- 의존성 추가
- OrderService(Producer)
- 의존성 추가

OrderService.POM.XML 의존성추가
- Bean 설정 파일 등록

OrderService.kafkaProducerConfig 설정파일 추가 - kafkaTmplate()
- 데이터를 전송할 때 사용할 Bean
- ProducerFactory
- 전송하는 Producer Kafka를 설정
- OrderService의 KafkaProducer 추가

OrderService.kafkaProducer 추가 - ObjectMapper를 통해 orderDto를 StringJson으로 변경하고 이를 kafkatemplate을 통해 전송한다.
- OrderService 수정
- kafkaProducer에다 전송해야 되는 데이터를 추가한다.

OrderService.Controller에 KafkaProducer를 주입받는다 
kafkaProducer를 실행시키는 코드를 추가한다
- 의존성 추가
728x90
'Spring Cloud로 개발하는 MSA > 데이터 동기화를 위한 Apache Kafka의 활용' 카테고리의 다른 글
| Multi Orders Microservice 사용에 대한 데이터 동기화 문제 (0) | 2022.02.08 |
|---|---|
| Kafka Sink Connect 사용 (0) | 2022.02.07 |
| Kafka Source Connect 사용 (0) | 2022.02.07 |
| Apache Kafka 사용 - Kafka Connect 설치하기 (0) | 2022.02.07 |
| Apache Kafka 사용 - Producer/Consumer (0) | 2022.02.07 |