KAFKA消息堆积

目录

消息堆积介绍

查看kafka消息队列的积压情况


消息堆积介绍

消息堆积是消费滞后(Lag)的一种表现形式,消息中间件服务端中所留存的消息与消费掉的消息之间的差值即为消息堆积量,也称之为消费滞后(Lag)量。

LogStartOffset:表示一个Partition的起始位移,初始为0,虽然消息的增加以及日志清除策略的影响,这个值会阶段性的增大。

ConsumerOffset:消费位移,表示Partition的某个消费者消费到的位移位置。

HighWatermark:简称HW,代表消费端所能“观察”到的Partition的最高日志位移,HW大于等于ConsumerOffset的值。

LogEndOffset:简称LEO, 代表Partition的最高日志位移,其值对消费者不可见。比如在ISR(In-Sync-Replicas)副本数等于3的情况下(如下图所示),消息发送到Leader A之后会更新LEO的值,Follower B和Follower C也会实时拉取Leader A中的消息来更新自己,HW就表示A、B、C三者同时达到的日志位移,也就是A、B、C三者中LEO最小的那个值。由于B、C拉取A消息之间延时问题,所以HW必然不会一直与Leader的LEO相等,即LEO>=HW

 

查看kafka消息队列的积压情况

创建topic

kafka-topics --create --zookeeper master:2181/kafka2 --replication-factor 2 --partitions 3 --topic mydemo5

列出topic

kafka-topics --list --zookeeper master:2181/kafka2

描述topic

kafka-topics --describe --zookeeper master:2181/kafka2 --topic mydemo5

生产者生产消息

kafka-console-producer --broker-list master:9092 --topic mydemo5

消费者消费消息指定消费组名

kafka-console-consumer --bootstrap-server master:9092,node01:9092,node02:9092 --new-consumer --consumer-property group.id=test_kafka_game_x_g1 --topic mydemo5

查看正在运行的消费组

kafka-consumer-groups --bootstrap-server master:9092 --list --new-consumer

计算消息的消息堆积情况

kafka-consumer-groups --bootstrap-server master:9092 --describe --group test_kafka_game_x_g1

LogEndOffset 下一条将要被加入到日志的消息的位移

CurrentOffset 当前消费的位移

LAG 消息堆积量 

个人博客:https://www.upheart.top/ 

个人公众号,日常分享一个知识点,每天进步一点点,面试不慌:

原创文章 19 获赞 214 访问量 16万+

猜你喜欢

转载自blog.csdn.net/qq_35508033/article/details/106061060