Kafka
jl2tina
无聊的人生无聊的我
展开
-
kafka处理消息写入和备份的全流程
Base Offset:是起始位移,该副本中第一条消息的offset,如下图,这里的起始位移是0,如果一个日志文件写满1G后(默认1G后会log rolling),这个起始位移就不是0开始了。 HW(high watermark):副本的高水印值; LEO(log end offset):日志末端位移,代表日志文件中下一条待写入消息的offset;LEO包括leader副本和follower副本。leader LEO:leader的LEO就保存在其所在的broker的缓存里,当lea.原创 2020-09-23 18:20:53 · 1184 阅读 · 0 评论 -
kafka的consumer接收消息消费
默认情况下,consumer是自动提交位移的,可以修改consumer端参数enable.auto.commit=false来设置提交方式为手动提交。默认情况下,自动提交间隔为5秒,可以通过修改 auto.commit.interval.ms=1000来配置自动提交的时间间隔。自动提交降低了开发成本,但是不能细粒度处理位移提交。例如一个典型的consumer应用场景:用户需要对poll方法返回的消息集合中的消息执行业务级处理,只有消息真正被处理完之后再提交位移,使用自动提交位移显然...原创 2020-08-12 18:10:27 · 1059 阅读 · 0 评论 -
kafka中的coordinator
1、Transaction CoordinatorKafka事务Transaction Coordinator 事务的交易协调员PID ---通过---> Transaction Coordinator---获得--->Transaction ID为了实现跨分区跨会话的事务,需要引入一个全局唯一的Transaction ID,并将Producer获得的PID和Transaction ID绑定。这样当Producer重启后就可以通过正在进行的Transaction ID获得原来..原创 2020-08-12 16:59:48 · 2910 阅读 · 3 评论 -
Kafka消息数据积压,消费能力不足如何处理?
可以从两方面考虑:1、如果是Kafka消费能力不足,则可以考虑增加Topic的分区数(一般一个Topic分区数为3-10个),并且同时提升消费组的消费者数量,消费者数==分区数。两者缺一不可2、如果是下游的数据处理不及时:则提高每批次拉取的数量。批次拉取数据过少(拉取数据/处理时间<生产速度),使处理的数据小于生产的数据,也会造成数据积压。...原创 2020-08-11 19:18:26 · 4077 阅读 · 0 评论 -
kafka分区与topic 理解;
kafka:topic为什么要进行分区?副本机制是如何做的?https://blog.csdn.net/weixin_38750084/article/details/82942564如何根据数据量确定Kafka分区个数、Kafka的分区是不是越多越好、Kafak生产者分发策略,消费者负载均衡 09https://blog.csdn.net/weixin_42641909/article/details/89294698...原创 2020-08-05 18:01:12 · 884 阅读 · 0 评论