이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 21474|회답: 0

[출처] Spring Boot는 Kafka의 토픽 또는 GroupId를 동적으로 설정합니다

[링크 복사]
게시됨 2021. 11. 14. 오후 8:03:45 | | | |
클러스터에 마이크로서비스를 배포할 때, 모든 애플리케이션에 명령을 내리고 싶다면 Kafka 주제에 애플리케이션을 구독할 수 있지만, 동일한 주제가 모든 애플리케이션에 수신되려면 서로 다른 그룹ID를 설정해야 한다는 점을 유의해야 합니다.

도커를 사용해 다음 명령어로 Kafka 애플리케이션을 구축하세요:

참고: 192.168.1.166을 실제 IP 주소로 교체하세요

pom.xml spring-kafka 패키지를 다음과 같이 소개합니다:


Kafka 소비자 구성을 맞춤화하려면 다음과 같이 새로운 KafkaConsumer 파일을 생성하세요:


기본 구성이 있는 새로운 소비자 ConfigConsumer를 생성하는데, 이 구성은 topic:defaultTopic,groupid:defaultGroupId이며, 코드는 다음과 같습니다:

application.properties를 사용하여 카프카의 주소를 구성합니다:


프로젝트를 시작하려면 앱 구독이 기본 구성으로 사용되며, 다음과 같습니다:



KafkaMessageListenerContainer는 AbstractMessageListenerContainer 추상 클래스를 상속하며, createSimpleLoggingConsumerRebalanceListen 메서드는 소비자의 groupid와 주제 partition을 출력합니다.

2021-11-14 19:44:26.689 정보 14256 --- [ntainer#0-0-C-1] o.s.k.l.KafkaMessageListenerContainer : defaultGroupId: partitions assigned: [defaultTopic-0]
주제와 그룹ID를 동적으로 설정하면 프로젝트 시작 명령은 다음과 같습니다:



주제는 a1로 설정되어 있고 그룹ID는 itsvse.com

2021-11-14 19:46:25.330 정보 12256 --- [ntainer#0-0-C-1] o.s.k.l.KafkaMessageListenerContainer : itsvse.com: 할당된 파티션: [a1-0]
Spring은 jar 패키지 내 기본 구성을 덮어씁니다
https://www.itsvse.com/thread-10129-1-1.html

(끝)





이전의:MySQL 성능 최적화를 위한 느린 쿼리
다음:Spring Boot Kafka가 재시작하여 오래된 데이터를 버립니다
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com