最近在折腾activemq,苦于寻找测试其性能的工具,网上兜了一大圈,要么是要自己编译的还不一定能成功,要么步骤超级烦,最终找到了,竟然就是activemq自带的,哥我服了!
就在activemq安装目录下的example目录下,运行方法很简单,在该目录下:
1、运行消费者:ant consumer
2、运行生产者:ant producer
这也太简单了吧,但事实并没有。ant哪里冒出来的命令?
官方说明:Apache Ant,是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发。由Apache软件基金会所提供
所以,你先要装好ant才能运行上面的命令。ant需要java环境,所以java环境要装好;然后配好ant的环境变量,否则你只能全路径去运行ant命令了。
activemq默认的测试工具可以配置的,见build.xml,其中几个比较常用的参数如下:
<property name="url" value="tcp://localhost:61616" /> MQ服务器地址
<property name="subject" value="dearda" /> 队列名
<property name="max" value="2000000" /> 每次启动后发送/接收的数量,完成这个数量之后自动结束
<property name="parallelThreads" value="1" /> 每次进程数?
<property name="messageSize" value="1000000" /> 消息大小
<property name="sleepTime" value="0" /> 休眠时间,默认为0的话发送接收消息速度飞快,单位毫秒
有了这个工具,可以设置几百万条消息做压力测试,然后逐步调整heap、perm内存空间大小,慢慢调出最稳定最优的MQ配置。