Skip to content

队列性能瓶颈分析(kafka)

队列性能瓶颈分析(kafka)

消息中间件介绍:

  • ActiveMQ:Apache 出品的最流行的、能力强劲的消息中间件,完全支持 JMS(Java message service)规范,为 java 应用提供统一的消息操作,支持事务、服务性能稳定、支持数据持久存储,有丰富的 api、支持多种集群构建模式

ActiveMQ

  • Kafka:Kakfa 是一个分布式的基于发布/订阅模式的消息队列(message queue),追求高吞吐量,不支持事务,对消息重复、丢失、错误没严格要求,主要应用于日志收集、大数据的实时处理场景

Kafka

消息中间件对比

消息中间件性能关注点

  1. 接收 Producer 生产消息速率
  2. 支撑 Customer 消费消息速率
  3. 消息积压承受容量评估
  4. 当消息体较大时,对消息中间件系统性能的影响
  5. 消息中间件系统集群容灾测试

客户端软件查看

https://www.kafkatool.com/download2/offsetexplorer.dmg 本地下载 offsetexplore 软件

查看消费队列情况

  1. 发送消息单线程消息 http://127.0.0.1:8081/kafka/sendMessage.json?topic=topicCal&num=100
  2. 观察系统资源占用情况、日志输出
  3. 观察 kafka 消息消费积压情况 ./kafka-consumer-groups.sh --bootstrap-server 127.0.0.1:9092 --describe --group groupCal

kafka 常用命令

  1. 查看 topics ./kafka-topics.sh --list --bootstrap-server 127.0.0.1:9092
  2. 查看消费者 ./kafka-consumer-groups.sh --bootstrap-server 127.0.0.1:9092 --list
  3. 查看一个消费者情况 ./kafka-consumer-groups.sh --bootstrap-server 127.0.0.1:9092 --describe --group groupA