如何加载测试RabbitMQ服务器(使用JMeter,python或任何其他工具..)?

时间:2016-01-21 23:25:20

标签: load jmeter rabbitmq load-testing amqp

我被授权访问RabbitMQ服务器以对其进行负载测试。我是服务器和AMQ协议的新手。我一直在网上研究,看看有什么不同的方法。到目前为止,我正在调查两种方法。

  1. JMeter的;我找到了这个项目:https://github.com/jlavallee/JMeter-Rabbit-AMQP#build-dependencies。它给了我一个jar文件,我可以创建JMeter AMQP消费者和发布者,但我不知道该放哪些字段。 (虚拟主机vs主机 - dunno我的端口 - ..) enter image description here

  2. 的Python;使用皮卡。 我有一个简单的发件人脚本,它从我的客户端连接到我的服务器,并向服务器发送一个“hello world”文本。还写了一个接收器脚本来接收那些'hello world'。如果我打开多个终端并同时运行我的发送者脚本10个实例,这是负载的确定吗?

  3. 同样,我问所有这些因为我是服务器,云,负载测试和Jmeter的新手。这只是我必须完成的任务。

    感谢您的回答,您可以让我为我澄清一些事情。

2 个答案:

答案 0 :(得分:7)

您可以使用rabbitmq的Java客户端工具:
https://www.rabbitmq.com/java-client.html

它带有PerfTest:
https://www.rabbitmq.com/java-tools.html

您可以使用此命令运行它:

./runjava.sh com.rabbitmq.examples.PerfTest \
-h amqp://<user>:<password>@<host>:<port>/<vhost> \
-x <number_of_producers> \
-y <number_of_consumers> \
-s <message_size> \
-C <total_number_of_message> \
-u <queue_name>

如果您查看文档或源代码,您还可以使用其他标记,您可以看到它们是什么。

更新/无耻插件
我写了一个网络应用程序,将这些工具集中到一个地方https://github.com/johnlonganecker/rabbitmq-performance-app enter image description here

答案 1 :(得分:3)

随身携带jar,请将其放在jmeter / lib / ext文件夹下。现在打开Jmeter并准备一份测试计划。

第1步:要点击测试计划,请右键单击“测试计划”,然后转到“添加” - >“主题(用户)” - >“主题组”。给Thread Group命名:

enter image description here

第2步:然后右键单击您的论坛并转到添加 - >采样器&gt; AMQP发布者:

enter image description here

将主机设为&#34; localhost&#34;,端口为&#34; 5672&#34;,用户名和密码为&#34;访客/访客&#34;。

同时选择/取消选择&#34;耐用&#34;,&#34;持久性&#34;等功能等等,根据您的交换设置。

第3步:然后右键点击您的论坛,然后转到添加 - >收听者&gt;图表结果:

enter image description here

第4步:现在保存测试计划并执行。

enter image description here

有关更详细的设置,请参阅我的博客:

http://jatinanejablog.blogspot.in/2016/06/configure-jmeter-to-load-test-rabbit-mq.html