inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

Kafka를 활용한 데이터 동기화 테스트 ①

KafkaListener DB에서 update 나 delete 이벤트 감지하는방법있을까요?

501

백엔드 주니어 개발자

작성한 질문수 23

1

카프라 활용 1~2를 보면서 궁금한 점이 생겼는데

DB서 insert 가 발생했을 때는 @KafkaListener 를 통해 생성된 데이터를 받을 수 있는데 update나 delete 가 발생했을 때는 @KafkaListener로 받을 수 없더라고요?


DB에서 update또는 delete문이 발생했을 때의 이벤트도 받으려면 어떻게 해야할까요?

spring-boot jpa 아키텍처 spring-cloud kafka msa rabbitmq

답변 2

1

백엔드 주니어 개발자

좀 찾아보니까 insert,update,delete에 대한 모든 이벤트를 받으려면 Debezium connector를 써야하는 것 같군요?
저희가 지금 사용하고 있는건 jdbc connector라서 모든 이벤트를 받지 못하는 것 같은데 제가 이해한게 맞을까요?

https://kawaii-jordy.tistory.com/3
https://debezium.io/documentation/reference/stable/connectors/

-1

사부도

@Transactional 붙이면 되지 않을까요?

 

0

백엔드 주니어 개발자

답변감사합니다!

 

JPA를 사용할 때 수정,삭제가 되지 않는 것이 문제가 아니라 Connect가 DB의 update, delete문이 발생했을 때 이를 감지하지 못하는게 문제였습니다

 

Jdbc Connector는 polling 방식으로 동작해서 새롭게 추가된 데이터만 감지를 하는것이 문제였습니다. 하지만 Debezium Connector를 사용하면 DB의 Log정보를 확인하여 update, delete된 log를 통해서 변견된 사항을 감지해서 Topic에 메시지를 저장할 수 있게됩니다.

이를 통해 Spring에서 @AddEventLivener로 Consuming하여 등록, 수정, 삭제이벤트를 처리 할 수 있게되었습니다.

 

블로그에 Kafka를 사용하여 CDC를 구현한 과정을 정리하였는데 궁금하시면 한번 봐주시면 감사하겠습니다

https://velog.io/@wontaekoh/Kafka%EB%A5%BC-%EC%9D%B4%EC%9A%A9%ED%95%9C-CDC-%EA%B8%B0%EB%B0%98-ETL-%EC%84%9C%EB%B9%84%EC%8A%A4-%EA%B5%AC%ED%98%84%ED%95%98%EA%B8%B0-%EA%B5%AC%ED%98%84

kafka 업데이트 강의 듣고 시포요

0

82

1

강의 교안

0

68

1

마이크로서비스간 통신 시, 인증 처리

0

76

1

api gateway 에서 인증 처리

0

62

1

섹션 19 질문드립니다

0

50

1

강의 자료 업데이트

0

80

1

부하분산 강의 섹션

0

55

1

강의자료는 어디에서?

0

68

1

강의 자료는 어디서 다운 받을 수 있나요?

0

108

1

전체 사용자 조회시 오류

0

56

1

혹시 pk 외 별도의 id 를 부여한 이유가 있을까요 ??

0

107

2

학습 방향

0

93

2

카프카 커넥터 사용 목적 문의

0

84

2

kafka 강의

0

104

2

서비스 디스커버리 종류

0

85

2

강의 자료에 대해서 궁금해요

0

113

2

GlobalFilter, LoggingFilter가 동작하지 않습니다.

0

87

2

Kafka Source Connect 버전 에러

0

82

2

소스커넥터는 사용안한 거 맞죠?

0

79

2

강의자료 업데이트 문의

0

93

2

강의에서 BCryptPasswordEncoder 에 역할(5-2)

0

55

1

강의 업데이트 계획이 궁금합니다.

0

110

2

MSA 애플리케이션에 Spring Web과 Spring Data JPA를 사용하는 것이 바람직한지 궁금합니다. (MSA 설계와 관련된 질문입니다)

0

160

2

어떤 것이 업데이트 된 건가요?

0

160

2