Kafka应用Demo:多消费者实例按主题订阅消费消息,增强系统可靠性

环境搭建

在本地启动两个消费者进程,配置同的群组(neo1), 订阅同一个主题消费消息。

生产者和消费者代码与《Kafka应用Demo:按主题订阅消费消息》相同。

测试步骤

  1. 生产者发送多个数字消息到kafka队列, 可以看到只有其中一个消费者在接收并消费消息,另外一个消费者实例处于空闲状态。
  1. 把正在处理消息的消费者进程停掉后,另外一个消费者实例将接手处理剩余未完成的消息。

分析

从测试结果来看:启动多个相同组ID的消费者实例,可以提升系统的可靠性,当处理任务的消费者挂掉后 同组的其它消费者能接过任务继续往下处理。但是,备份实例在系统正常运行期间是空闲的,浪费了资源,这种方式没有起到负载均衡的效果。

相关推荐
今年下半年8 小时前
【Spring Boot】多种存储文件(FastDFS / MinIO / 阿里云 OSS)接入设计说明(附源码)
spring boot·分布式·中间件·简单工厂模式·策略模式
ShineWinsu10 小时前
对于Redis:string类型的解析
java·c++·redis·分布式·缓存·面试·string
仍然.14 小时前
RabbitMQ---可靠性传输
网络·分布式·rabbitmq
灯澜忆梦15 小时前
【RabbitMQ #13】 | 延迟消息
分布式·rabbitmq·ruby
青山木16 小时前
秒杀系统设计(二):数据正确性——防超卖、分布式锁与一人一单
分布式·后端·mysql·中间件·架构
weixin_424183611 天前
开放—封闭原则实战(下):基于策略的流程编排与编译期多态
c++·分布式·系统架构
frjc1 天前
分布式事务:场景与选型决策表
分布式
GISMagic1 天前
5.《Designing Data-Intensive Applications》:系统设计与分布式能力提炼
分布式·ai coding
需要8261 天前
分布式 ID 生成:雪花算法、号段模式与时钟回拨
分布式·算法
灯澜忆梦2 天前
【RabbitMQ #11】 | 消费者可靠性
分布式·rabbitmq·ruby