美文网首页
kafka enable-auto-commit

kafka enable-auto-commit

作者: hehehehe | 来源:发表于2020-07-03 15:12 被阅读0次

    https://www.jianshu.com/p/36fc14c68aac
    kafka模块提供了一些开箱即用的功能,但大部分特性均来自spring-kafka。spring-kafka针对kafka的操作做了高级抽象

    提交方式

    spring-kafka的消费者可以指定其提交方式,默认为自动提交。可以通过修改enable-auto-commit配置来开启手动提交。需注意的是,仅开启此选项,listener的默认应答方式ack-mode为batch,仍是自动提交,只不过变成了每批记录传递给监听器之后批量提交。如果需要变为显示提交,需要设置ack-mode为MANUAL或MANUAL_IMMEDIATE,并在监听器中加入Acknowledgment参数,调用其acknowledgment方法进行手动提交。

      kafka:
        consumer:
          enable-auto-commit: false
        listener:
          ack-mode: manual_immediate
    
        @KafkaListener(topics = "acknowledgment-test")
        public void listen(UserModel userModel, Acknowledgment acknowledgment) {
            System.out.println(userModel);
            acknowledgment.acknowledge();
        }
    

    相关文章

      网友评论

          本文标题:kafka enable-auto-commit

          本文链接:https://www.haomeiwen.com/subject/igusqktx.html