(十二)RabbitMQ消息队列-性能测试
2017-05-03 18:03
288 查看
硬件配置
宿主机用的联想3850X6的服务器四颗E7-4850v3的处理器,DDR4内存,两块1.25TB的pcie固态。在宿主机上使用的事esxi5.5的虚拟化平台,在子系统中安装RabbitMQ和测试脚本,RabbitMQ配置如下:CPU:24核
内存:24GB
硬盘:24GB固态
确定哪些参数可能影响性能:进程数、是否持久化、是否ack确认以及交换机模式。其实交换机模式更多应该影响发布消息的性能,因为在消费消息时消息已经在队列所以影响不大。为了避免之前的一些配置影响测试我新建了一台RabbitMQ服务。
模式对性能的影响
首先我们看下不同交换机模式对新建交换机、新建队列、绑定、发布消息等性能的影响。在测试脚本中我是for循环建立10万交换机、循环建立10万队列、循环绑定10万、发送10万消息。有个疑问:消息发布的速度比我之前使用单独发布消息的速度快很多,单机模式之前从来没有超过5万过。以上测试数据都是持久化的情况下的测试结果,可以看出不同的模式对于新建交换机、新建队列、绑定等操作性能影响不大,但是在direct模式下明显消息发布的性能比其他模式强很多,并且消息发送到相同队列比发送到不同队列性能稍好。
持久化对消息性能的影响
实际生产中大部分的操作一般是消息的订阅和发布,下面对消息订阅和发布的性能进行详细测试。发布100万消息。在消息持久化模式下:
发布:13888msg/s
订阅:15384msg/s
在消息非持久化模式下:
发布:18867msg/s
订阅:26315msg/s
RabbitMQ技术交流QQ群:327034977(添加时请备注RabbitMQ)
相关文章推荐
- redis消息队列性能测试及知识点整理
- RabbitMQ消息队列测试代码
- rabbitmq与radis队列性能测试
- redis 消息队列性能测试
- ActiveMQ、RabbitMQ与ZeroMQ等消息队列性能对比
- [转]Redis作为消息队列与RabbitMQ的性能对比
- 消息队列性能对比——ActiveMQ、RabbitMQ与ZeroMQ(译文)
- RabbitMQ 消息队列(centos安装与php下代码测试)
- [转]Redis作为消息队列与RabbitMQ的性能对比
- Redis作为消息队列与RabbitMQ的性能对比
- Redis作为消息队列与RabbitMQ的性能对比
- 消息队列RabbitMQ入门介绍
- ZeroMQ 消息队列 及 jzmq (java binding) 安装及代码测试
- 消息队列RabbitMQ入门介绍
- RabbitMQ 3.0.3 发布,高级消息队列服务
- 消息队列 rabbitmq 学习 记录
- 分布式任务分发框架Gearman测试、性能监控、队列持久化【python 实例】
- RabbitMQ 2.8.7 发布,AMQP 消息队列
- openstack安装rabbitmq-server消息队列时出现错误
- 消息队列、AMQP和RabbitMQ