验证kafka消费堆积
- step1:
消费者一 属于group1
bin/kafka-console-consumer.sh --bootstrap-server 192.168.20.100:9092 --topic osmessage --consumer-property group.id=test_group1
消费者二 属于group2
bin/kafka-console-consumer.sh --bootstrap-server 192.168.20.100:9092 --topic osmessage --consumer-property group.id=test_group2
同时启动两个消费者
执行命令查看:
[root@localhost kafka_2.5.0]# ./bin/kafka-consumer-groups.sh --bootstrap-server 192.168.20.100:9092 --all-topics --list
test_group1
test_group2
-
step2:
生产者发送一条消息到kafka
2个消费者都正常消费消息:
image.png
2个生产者能正常消费消息,此时停了2个消费者,生产者又发送了2条消息到kafka
- step3:
观察消息堆积情况
[root@localhost kafka_2.5.0]# ./bin/kafka-consumer-groups.sh --bootstrap-server 192.168.20.100:9092 --group test_group1 --describe
Consumer group 'test_group1' has no active members.
GROUP TOPIC PARTITION CURRENT-OFFSET LOG-END-OFFSET LAG CONSUMER-ID HOST CLIENT-ID
test_group1 osmessage 0 33 35 2 - - -
可以发现一家堆积了2条消息
-
step4:
启动2个消费者,测试能不能正常按照上次的offerset消费
启动消费者:
image.png
继续消费未消费的消息
再次查看堆积情况,一切正常,验证结束
[root@localhost kafka_2.5.0]# ./bin/kafka-consumer-groups.sh --bootstrap-server 192.168.20.100:9092 --group test_group1 --describe
GROUP TOPIC PARTITION CURRENT-OFFSET LOG-END-OFFSET LAG CONSUMER-ID HOST CLIENT-ID
test_group1 osmessage 0 35 35 0 consumer-test_group1-1-1b190602-9d57-4b07-92a4-36c9ba2ec059 /192.168.20.100 consumer-test_group1-1