当前位置: 首页 > news >正文

平台网站建设需求核酸检测利润6700亿

平台网站建设需求,核酸检测利润6700亿,二手房网站怎么做,企业中标信息查询网转载自 springboot手动提交kafka offset enable.auto.commit参数设置成了false 但是测试发现enable.auto.commit参数设置成了false#xff0c;kafka的offset依然提交了#xff08;也没有进行人工提交offset#xff09;。 查看源码 如果我们enable.auto.commit设置为false…转载自 springboot手动提交kafka offset enable.auto.commit参数设置成了false 但是测试发现enable.auto.commit参数设置成了falsekafka的offset依然提交了也没有进行人工提交offset。 查看源码 如果我们enable.auto.commit设置为false那么就会走标红的if语句。而且下面有个stopInvokerAndCommitManualAcks()方法看名字就知道是人工提交的意思。那么我们进去stopInvokerAndCommitManualAcks()方法瞅瞅。  如上图所示有个processCommits()方法那么继续追进去  单单看标红的方法是不是就知道这方法里面是更新offset和提交offset的方法。那么我们继续追进去 结论如果我们把enable.auto.commit参数设置成true。那么offset交给kafka来管理offset进行默认的提交模式。  enable.auto.commit参数设置成false。那么就是Spring来替为我们做人工提交从而简化了人工提交的方式。  所以kafka和springboot结合中的enable.auto.commit为false为spring的人工提交模式。enable.auto.commit为true是采用kafka的默认提交模式。  手动提交 spring.kafka.consumer.enable-auto-commit设置为false设置AckMode的值 /*** The offset commit behavior enumeration.*/public enum AckMode {/*** Commit after each record is processed by the listener.*/RECORD,/*** Commit whatever has already been processed before the next poll.*/BATCH,/*** Commit pending updates after* {link ContainerProperties#setAckTime(long) ackTime} has elapsed.*/TIME,/*** Commit pending updates after* {link ContainerProperties#setAckCount(int) ackCount} has been* exceeded.*/COUNT,/*** Commit pending updates after* {link ContainerProperties#setAckCount(int) ackCount} has been* exceeded or after {link ContainerProperties#setAckTime(long)* ackTime} has elapsed.*/COUNT_TIME,/*** User takes responsibility for acks using an* {link AcknowledgingMessageListener}.*/MANUAL,/*** User takes responsibility for acks using an* {link AcknowledgingMessageListener}. The consumer is woken to RECORD 每处理一条commit一次BATCH(默认) 每次poll的时候批量提交一次频率取决于每次poll的调用频率TIME  每次间隔ackTime的时间去commitCOUNT  累积达到ackCount次的ack去commitCOUNT_TIME ackTime或ackCount哪个条件先满足就commitMANUAL listener负责ack但是背后也是批量上去MANUAL_IMMEDIATE listner负责ack每调用一次就立即commit manual commit KafkaListener(topics k010)public void listen(ConsumerRecord?, ? cr,Acknowledgment ack) throws Exception {LOGGER.info(cr.toString());ack.acknowledge();} 方法参数里头传递Acknowledgment然后手工ack 如果只添加上面语句会报错 the listener container must have a MANUAL Ackmode to populate the Acknowledgment 我们要配置AckMode为MANUAL Ackmode factory.getContainerProperties().setAckMode(AbstractMessageListenerContainer.AckMode.MANUAL);
http://www.pierceye.com/news/887368/

相关文章:

  • 南宁seo平台费用安徽网站关键词优化排名
  • 李贤威 wordpress甘肃搜索引擎网络优化
  • 网站建设的步骤图片过程9377将军
  • 做彩票网站需要什么服务器wordpress slug
  • 个人空间网站建设太原做网页软件
  • 网站建站方式有哪些wordpress星座主题自适应
  • 如何为公司做网站算命 网站开发
  • 那些做软件的网站十大装潢公司上海
  • wordpress 仿站 主题公路建设网站
  • 接网站 建设网站建设业务员招聘
  • 江西工程建设信息网站服装公司网站建设
  • 什么店是做网站制作的dw网站结构图怎么做
  • 一个网站开发需要多久软件开发工时费用标准
  • 做网站 公司不懂英文怎么做英文的seo网站
  • 南宁企业门户网站建设价格连云港网站建设电话
  • 石林彝族网站建设网站活动页面设计
  • 网站建设流程表推广联盟有哪些平台
  • 制作网站深圳建大型门户网站
  • 网站开发招标技术规范书网站建设动态静态
  • 阿里巴巴网站开发工具北京的网站制作公司
  • 石家庄网站营销互联网运营培训课程
  • 单位网站服务的建设及维护oa软件定制开发
  • 银川公司网站建设zepto网站开发
  • 看谁做的好舞蹈视频网站电话营销
  • 开封建网站到哪里学平面设计
  • 电子商务与网站建设实践论文化工行业网站建设
  • 如何搭建一个网站平台卖16斤肉赚200元
  • 手机主页网站推荐江宁城乡建设局网站
  • 甜品网站设计论文张家界seo
  • 单位网站及政务新媒体建设管理wordpress刷留言