Kafka Console Client 的 Consumer Group

以往使用 kafka-console-consumer.sh 消费 Kafka 消息时并没有太在意过 Consumer Group,在命令行中也不会使用 --group 参数,本文针对 Kafka Console Client 命令行中的 Consumer Group 进行一次统一说明。

1. 如不设置 --group 参数会自动生成一个 Consumer Group ID

通常我们在使用 kafka-console-consumer.sh 的时候是不会设置 --group 参数的,从使用体验上也看不出有什么差异,原因在于 Kafka Console Client 会自动为当前这次请求自动创建一个 GroupID,一般会命名为 console-consumer-xxxx,每执行一次 kafka-console-consumer.sh 就生成一个新的 GroupID,以下是测试过程:

从上面的测试可以看出:每执行一次 kafka-console-consumer.sh 都会自动创建一个新的 Consumer Group,命令行启动的 Consumer 就在这个 Group 中,且也只有这一个 Consumer。

2. 设置 --group 参数,多个 kafka-console-consumer.sh 加入同一 Consumer Group

我们的测试用 topic 有3个 Partition, 我们打开三个 Console,分别执行一遍:

bash 复制代码
kafka-console-consumer.sh --bootstrap-server $KAFKA_BOOTSTRAP_SERVERS --topic 'osci.mysql-server-3.inventory.orders' --group 'app-1'

然后向 Kafka 中插入三条数据(avro 格式,二进制数据),得到如下输出:

可以看到:三个 kafka-console-consumer.sh 在同一个 Group 下工作,各自对接一个 Partition,所以写入的三条消息是在三个 Console 中输出出来的。这就是 Consumer Group 的标准行为。

相关推荐
yumgpkpm1 天前
腾讯云TBDS与CDH迁移常见问题有哪些?建议由CDH迁移到CMP 7.13 平台(类Cloudera CDP,如华为鲲鹏 ARM 版)
hive·hadoop·zookeeper·flink·spark·kafka·hbase
2501_941142131 天前
基于 Kotlin 构建移动端高并发后台服务与实时数据同步系统的架构设计与工程实践分享
kafka
yumgpkpm2 天前
数据可视化AI、BI工具,开源适配 Cloudera CMP 7.3(或类 CDP 的 CMP 7.13 平台,如华为鲲鹏 ARM 版)值得推荐?
人工智能·hive·hadoop·信息可视化·kafka·开源·hbase
Zhao·o2 天前
KafkaMQ采集指标日志
运维·中间件·kafka
青靴2 天前
轻量级 CI/CD 实战(三):Kafka消费者Docker容器化部署
分布式·docker·kafka
galaxyffang2 天前
RocketMQ 为什么性能不如 Kafka?
分布式·kafka·rocketmq
2501_941881402 天前
ClickHouse OLAP 数据仓库在互联网大规模分析场景下性能优化与查询加速实践经验分享
kafka
一叶飘零_sweeeet2 天前
从 Kafka 到 RocketMQ:迁移实战全攻略
分布式·kafka·rocketmq
2501_941146323 天前
Java高性能微服务架构与Spring Boot实践分享:服务设计与性能优化经验
kafka
熊猫钓鱼>_>3 天前
数据处理的艺术:从Kafka到实时流处理平台的技术深度剖析
分布式·flink·kafka·数据治理·状态管理·管道·数据工程师