inflearn logo
강의

Course

Instructor

Introduction and Practice of MSA for Non-Majors (feat. Spring Boot)

Class Materials (Notion)

하나의 consumer에서 두가지 이상의 topic의 메세지를 받고자 할때 받는 메세지에 시간차와 상관없이 하나의 consumer에서 받을수 있나요?

77

dongk

21 asked

0

하나의 consumer에서 두가지 이상의 topic의 메세지를 받고자 할때 받는 메세지에 시간차와 상관없이 하나의 consumer에서 받을수가 있는 건가요?

아키텍처 spring-cloud kafka msa devops

Answer 2

0

jscode

안녕하세요! 질문 잘 해주셨어요 ~

질문해 주신 내용에 답변드려볼게요 !

 

"하나의 consumer에서 두가지 이상의 topic의 메세지를 받고자 할 때 받는 메세지에 시간차와 상관없이 하나의 consumer에서 받을수가 있는 건가요?"

-> 네! 하나의 Consumer가 여러 개의 Topic을 동시에 구독할 수 있어요 !

시간차와 상관없이 여러 Topic에서 들어오는 메시지를

하나의 Consumer 인스턴스가 모두 받을 수 있어요 !

참고로 만약 토픽마다 다른 처리 로직이 필요하다면

메시지 안에 토픽 정보를 구분할 수 있는 방법을 추가하거나

Consumer를 분리해서 관리하는 걸 추천드려요 :)

이 외로 궁금하신 점 있으시면 또 질문 남겨주세요 !!

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다. dongk님.

Kafka에서는 하나의 컨슈머에서 여러 토픽의 메시지를 동시에 소비할 수 있습니다. 이를 위해서는 소비하고자 하는 여러 토픽을 consumer 설정에 추가하면 됩니다.

Kafka Consumer에서 여러 토픽 처리 방법

  • Multi-topic Subscription: Kafka의 컨슈머는 여러 토픽에 대해 구독(subscribe) 할 수 있으며, 이는 KafkaConsumer.subscribe() 메서드를 통해 설정됩니다. subscribe 메서드에 여러 토픽을 포함한 리스트를 전달하면 됩니다.

  • 메시지 처리 방식: 각각의 토픽이 가진 파티션 수, 메시지 전송 속도, 메시지 순서에 따라 다르게 처리할 수 있도록 설정할 수 있습니다. 일반적으로는 여러 파티션에서 메시지가 도착하므로 비동기적으로 메시지를 소비하게 됩니다.

시간차와 상관없이 처리 가능 여부

Kafka는 각 파티션 내의 메시지 순서를 보장합니다. 따라서, 여러 파티션이나 여러 토픽으로부터 메시지를 받는 경우에도 각 파티션 내에서의 순서가 중요하게 여겨질 수 있습니다. 한 컨슈머는 여러 토픽에서 순서는 개별적으로 다르지만, 도착 시간 순으로 메시지를 받게 됩니다.

관련된 추가적인 정보는 다음 유사한 질문 링크에서 확인할 수 있습니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

gateway 생성 후 접속 확인 질문

0

3

1

순위가 동률일 때의 처리에 대해 질문드립니다.

0

10

2

Singleton 관련 질문입니다.

1

28

2

섹션4 AWS NAT Instance생성하는 과정에서 오류가 지속해서 발생합니다.

0

12

1

Ingress 생성하기 ingressclass 질문

1

23

2

deployment 업데이트 및 롤백 실행하기 -2

1

23

2

강의 듣는 중인데,

0

23

1

36강 오탈자가 있는 거 같습니다.

0

20

2

라우팅 테이블 설정 중 궁금한게 있습니다.

0

34

1

user-service jwt

0

32

2

애그리거트 질문있습니다!

0

31

2

젠킨스버전과 플러그인설치

1

36

2

DDD 는 마이바티스와 잘 맞지 않는건가요?

0

46

1

스프링부트 버전 문의드립니다.

0

38

1

cpu&memory 재설정하기에 질문이 있습니다.

1

51

2

MSA에서 서비스별 DB 작성에 관해

0

80

2

Microservice 에 DB 띄우기

0

61

2

MSA 프로젝트 요구사항 및 설계 에서의 FK

0

64

2

보상 트랜잭션을 위한 catch 문 안에서 에러가 발생한다면 어떻게 되는 건가요?

0

66

2

카프카에서 발행한 이벤트를 처리중에 실패한 경우 보통 어떻게 처리하는지 궁금합니다

0

108

2

Kafka 비동기방식 적용하면서 질문 있습니다!

0

81

2

가용성에대한 질의..

0

64

2

궁금한게있어요..

0

78

2

MSA강의 보다 궁금해서 질문드립니다.

0

91

2