Re: dynamic produce and consume new topics

2020-06-13 Thread Boyang Chen
Good question, TBH I'm not an expert on Spring, maybe cross post this question in the Spring community? On Sat, Jun 13, 2020 at 7:43 AM AJ Chen wrote: > Another strategy to handle dynamic topics: > SInce Spring Kafka MessageListenerContainer holds a list of topics, can we > simply add a new topi

Re: dynamic produce and consume new topics

2020-06-13 Thread AJ Chen
Another strategy to handle dynamic topics: SInce Spring Kafka MessageListenerContainer holds a list of topics, can we simply add a new topic into the existing container at runtime? Does the existing listener container object require a manual stop/start after its topic list changes? thanks, -aj

Re: dynamic produce and consume new topics

2020-06-12 Thread AJ Chen
I figured out this approach to consume new topics that become available at runtime: 1. create ConcurrentMessageListenerContainer for each new topic, call start() to start listening. 2. track all containers in a map, which listen and consume messages from the assigned topics. 3. call container.stop(

Re: dynamic produce and consume new topics

2020-06-12 Thread AJ Chen
Thanks, Boyang. Spring''s KafkaTemplate can easily create new topic on the flight already. On consumer side, is there java sample code to replace this annotation? That will create a new listener for a new topic and group-id on the fliight. @KafkaListener(topics = "test", groupId = "grp0") -aj

Re: dynamic produce and consume new topics

2020-06-12 Thread Boyang Chen
Hey AJ, you should be able to make the subscribed topics and output topics dynamic configs for Consumer and Producer. If you need to create new topics on runtime, there is some broker side setting you could use to allow topic creation based of produced records: https://stackoverflow.com/questions/