kafka发送消费核心参数与设计原理详解

核心参数详解:

发送端参数:

发送方式:默认值一般都是1:

重试参数 :

批量参数:

消费端参数:

自动提交参数:

如果是false,就是说消费完后不提交位移。也就是说比如之前消费的1-5.第N次还是消费到1-5.如果是false。那么第一次消费1-3,第二次消费4-5:默认是true:我们一般用false。因为会有消息丢失和消息重复消费的问题可能发生。那么我们就得手设置提交了:

比如我们设置了false,那么下面这个自动提交间隔参数就没用了。

同步提交和异步提交:

消费指定分区参数:

发消息的时候给分区0和1都发送消息了:

消费的时候只消费了0分区的:

消息回溯消费参数:

指定offset消费参数:

指定时间点消费参数:

这个参数:

这几个参数线上出问题的时候用得到:

心跳参数:

这个参数:

springboot整合kafka:

提交参数的配置可选项:

像这样:如果是上面配置的话 需要加上这个参数提交:

但是如果这里是batch:

就不需要手动提交,这个方法结束的时候,springboot会帮你提交:

这两个参数都是需要像上面那样在java代码里手动提交的:

原理:

进入到zk,就可以看到总控制器是broker0;这个controller节点是broker在启动的时候就创建的。谁先启动谁就是总控制器。但是是批量启动broke的话,那么就牵扯到ZK的ZAB协议选举来决定谁是总控制器了。

找的就是ISR的节点,按照这个顺序来作为新的leader

相关推荐
漫无目的行走的月亮1 小时前
Ubuntu下C语言操作kafka示例
kafka·librdkafka
yukai080083 小时前
【最后203篇系列】002 - 两个小坑(容器时间错误和kafka模块报错
分布式·kafka
老猿讲编程4 小时前
OMG DDS 规范漫谈:分布式数据交互的演进之路
分布式·dds
C++忠实粉丝4 小时前
服务端高并发分布式结构演进之路
分布式
洛神灬殇6 小时前
彻底认识和理解探索分布式网络编程中的SSL安全通信机制
网络·分布式·ssl
龙哥·三年风水6 小时前
workman服务端开发模式-应用开发-vue-element-admin封装websocket
分布式·websocket·vue
李洋-蛟龙腾飞公司9 小时前
HarmonyOS Next 应用元服务开发-分布式数据对象迁移数据文件资产迁移
分布式·华为·harmonyos
技术路上的苦行僧12 小时前
分布式专题(10)之ShardingSphere分库分表实战指南
分布式·shardingsphere·分库分表
GitCode官方12 小时前
GitCode 光引计划投稿 | GoIoT:开源分布式物联网开发平台
分布式·开源·gitcode
小扳14 小时前
微服务篇-深入了解 MinIO 文件服务器(你还在使用阿里云 0SS 对象存储图片服务?教你使用 MinIO 文件服务器:实现从部署到具体使用)
java·服务器·分布式·微服务·云原生·架构