【问题标题】:How to stop a @Bean annotated Kstream kafka consumer and continue to run spring-boot application如何停止 @Bean 注释的 Kstream kafka 消费者并继续运行 spring-boot 应用程序
【发布时间】:2020-05-22 21:25:30
【问题描述】:

我在同一个类中有多个@Bean注释的Kstream,kafka消费者,一旦所有消费者消费了特定的消息(K,V)对,我需要停止所有消费者并执行单独的一段代码。/ /comment 部分是我需要的。 以下是其中一位消费者的伪代码:

 @Bean
 public KStream<KEY, VALUE> ssStreams(StreamsBuilder builder) {



        KStream<KEY, VALUE> memberKStream = builder.stream(topicClass.getTopicName());

            KStream stream = memberKStream.map((key, value) -> {
                log.info("Consuming key  :::" + key.toString());


                if(value.getItem ='X' )
                {
                    // need to stop this consumer as soon as this condition is true
                   // jump the application to different class of project 

                }            

           }

}

我尝试过的事情:
1. 创建异常并通过 DeserializationExceptionHandler 进行处理。

【问题讨论】:

    标签: java spring spring-boot apache-kafka


    【解决方案1】:

    您应该停止 Kafka 侦听器容器

    【讨论】:

    • 不使用基础模板@kafkaListener,使用Kstream消费消息
    猜你喜欢
    • 1970-01-01
    • 2018-10-03
    • 1970-01-01
    • 2021-03-12
    • 1970-01-01
    • 1970-01-01
    • 2017-09-23
    • 2020-05-02
    • 2018-10-20
    相关资源
    最近更新 更多