Jmeter测试activeMQ

1.activeMQ 消息队列,jmeter中已经默认提供了消息队列的取样器:

2.jmeter 是通过 jndi 来获得 jms 中相关对象的,如 ConnectionFactory 和 Destination,所以在 jmeter 的 classpath 中需要添加一个 jndi.properties 属性文件,用于配置jndi。 创建jndi.properties文件,包含如下内容:
java.naming.factory.initial = org.apache.activemq.jndi.ActiveMQInitialContextFactory
java.naming.provider.url = tcp://192.168.120.140:61616

connectionFactoryNames = connectionFactory

#配置queue的destination,就是在activemq里的名字,queue可以使用这些名字
queue.T_MDM_Q = Queue.T_MDM
queue.T_IPS_Q= Queue.T_IPS
#配置topic的destination,就是在activemq里的名字,topic可以使用这些名字
topic.T_MDM_T= VirtualTopic.T_MDM
topic.T_IPS_T= VirtualTopic.T_IPS
3.把jndi.properties放到jmeter的启动jar包中:
可以直接将jndi.properties文件拖入jar包中;也可以执行如下操作,打开命令行窗口,并定位到 JMETER_HOME/bin 目录,运行如下命令 :
jar uf ApacheJMeter.jar jndi.properties

4.添加activemq-all-5.2.0.jar包到Jmeter的lib库:
将ACTIVE_HOME/activemq-all-5.2.0.jar文件复制到JMETER_HOME/lib目录中,jmeter在测试jms的时候会使用到activemq提供的jms的实现类,这些类并没有随jmeter一起分发,需要把这些类添加到jmeter的classpath中。
启动Jmeter测试JMS:
添加线程组及JMS的sampler,有三种方式的JMS消息:
Point-to-Point
右键》添加》sampler》JMS point-to-point 添加一个队列的界面
在这里插入图片描述

注:如果不写Receive queue,则不会有消费者,如果要写还是要写上面的一样的名字。
2)Publisher
在这里插入图片描述

3)jms subscriber
在这里插入图片描述