前言:使用Jmeter測(cè)試ActiveMQ的JMS消息,網(wǎng)上有一篇,但是圖片看不了,具體參數(shù)填什么也不清楚,因此決定總結(jié)這篇
所使用的Jmeter版本2.8,activemq版本5.6
一、創(chuàng)建jndi.properties文件
由于 jmeter 是通過(guò) jndi 來(lái)獲得 jms 中相關(guān)對(duì)象的,如 ConnectionFactory 和 Destination,所以在 jmeter 的 classpath 中需要添加一個(gè) jndi.properties 屬性文件,用于配置jndi
創(chuàng)建jndi.properties文件,包含如下內(nèi)容
java.naming.factory.initial = org.apache.activemq.jndi.ActiveMQInitialContextFactory
java.naming.provider.url = tcp://yourIP:61616
#指定connectionFactory的jndi名字,多個(gè)名字之間可以逗號(hào)分隔。
#以下為例:
#對(duì)于topic,使用(TopicConnectionFactory)context.lookup("connectionFactry")
#對(duì)于queue,(QueueConnectionFactory)context.lookup("connectionFactory")
connectionFactoryNames = connectionFactory
#注冊(cè)queue,格式:
#queue.[jndiName] = [physicalName]
#使用時(shí):(Queue)context.lookup("jndiName"),此處是MyQueue
queue.MyQueue = example.MyQueue
#注冊(cè)topic,格式:
# topic.[jndiName] = [physicalName]
#使用時(shí):(Topic)context.lookup("jndiName"),此處是MyTopic
topic.MyTopic = ActiveMQ.Advisory.Consumer.Topic.cacheupdate
保存并把這個(gè)文件復(fù)制到 JMETER_HOME/bin(JMETER_HOME為 jmeter 的安裝目錄)目錄中。
二、把jndi.properties放到j(luò)meter的啟動(dòng)jar包中
由于bin目錄并不在jmeter的classpath中,所以需要執(zhí)行一些額外的工作來(lái)把jndi.properties添加到j(luò)meter的classpath中,把jndi.properties打包到j(luò)meter的啟動(dòng)jar包中。jmeter的啟動(dòng)jar包為JMETER_HOME/bin/ApacheJMeter.jar,所以需要把jndi.properties 打包到這個(gè) jar 文件中。直接將文件拖入jar包中即可。
或者執(zhí)行如下操作,打開命令行窗口,并定位到 JMETER_HOME/bin 目錄,運(yùn)行如下命令 jar uf ApacheJMeter.jar jndi.properties