使用Jmeter创建ActiveMQ JMS POINT TO POINT请求,环境搭建、请求创建、插件安装、监听服务器资源等
2016-11-25 13:03
459 查看
最近要做公司消息中间件的性能测试,第一个想到的工具就是Jmeter了,网上简单搜了一下,基本上都是WEB测试的居多,只好自己研究官方文档了。
其中涉及Jmeter基本的术语或者概念,请自行参考官方文档或者google,这里主要讲JMS PTP请求是如何建立的。
下载Jmeter及相关插件:Jmeter下载地址点我,插件下载地址点我,ActiveMQ下载地址点我
Jmeter下载编译好的包解压就行了,为方便起见,解压目录我这里统称为JMETER_HOME,当然也可以下载源码(需要自己编译源码)安装
解压ActiveMQ
JMeterPlugins-Standard-1.2.1.zip
[b]JMeterPlugins-Extras-1.2.1.zip[/b]
ServerAgent-2.2.1.zip
插件安装:
分别解压前两个插件,将解压后文件夹中lib\ext目录下的JmeterPlugins-Standard.jar和JmeterPlugins-Extras.jar拷贝到刚JMETER_HOME\lib\ext目录下
解压ServerAgent-2.2.1.zip
针对JMS类型的Sampler,需要额外的jar包(我这里用的是apache ActiveMQ,将下载的AMQ apache-activemq-5.11.1根目录下的activemq-all-5.11.1.jar拷贝到JMETER_HOME\lib目录下)
启动ActiveMQ:打开dos窗口,进入ActiveMQ解压目录下的bin目录,输入命令:activemq.bat start
Tips:在启动ActiveMQ前,修改conf目录下的activemq.xml中的配置
上面标记的这个数字为最大连接数,自己设置,如果太小的话会导致发送的请求都被拒绝
启动ServerAgent:进入刚才解压的目录,以管理员身份运行startAgent.bat
哈哈,有木有觉得很麻烦,有点不耐烦了呢?至此,所有的准备工作已经就绪,下面开始使用Jmeter。
添加一个线程组
添加Samper:选择JMS POINT TO POINT
配置Sampler,这一块才是重点,因为要用到JNDI,之前网上看了些文章,都是直接修改ApacheJMeter_core.jar中的jemeter.properties文件,这种方式比较麻烦,涉及重新打包,这里我就直接在Jmeter GUI中配置JNDI的属性,具体见下图:
QueueConnection Factory:连接名
JNDI name Request queue:JNDI请求发送队列名
JNDI name Recieve queue:JNDI接收队列
TimeOut:超时时长
Expiration:过期时间
Communication style:Request only(只发送请求,如果选择Request Response模式,需要设置CorrelationId,并且需要服务端调用getReplyTo()方法来监听请求,这个一直没调通,回头再研究看看能不能通过自己写代码实现)
Content:发送消息内容,这里调用Jmeter的函数助手发送512个字符
Initial Context Factory:org.apache.activemq.jndi.ActiveMQInitialContextFactory(这个在之前从AMQ中拷贝到Jmeter\lib中的jar包里,Jmeter会自动扫描到)
JNDI Properties,queue.Test.Request和queue.Test.Reply,这里定义前面用到的两个变量
Provider URL:tcp://localhost:61616,这个是消息服务器的ip和端口,我这里用的本地的
下面就是添加监听器了,添加一个聚合报告,然后再添加一个jp@gc - PerfMon Metrics Collector监听器,其它的监听器及配置元件根据自己的实际需要来添加,这里贴一个PerfMon Metrics Collector配置
现在,一个JMS PTP的采样器已经配置完成,去设置一个线程开始跑起来吧,下面是一次运行后的结果
聚合报告:
服务器资源占用情况:
其中涉及Jmeter基本的术语或者概念,请自行参考官方文档或者google,这里主要讲JMS PTP请求是如何建立的。
准备工作:
安装JDK,推荐使用1.7以上版本,并设置JAVA_HOME下载Jmeter及相关插件:Jmeter下载地址点我,插件下载地址点我,ActiveMQ下载地址点我
Jmeter下载编译好的包解压就行了,为方便起见,解压目录我这里统称为JMETER_HOME,当然也可以下载源码(需要自己编译源码)安装
解压ActiveMQ
JMeterPlugins-Standard-1.2.1.zip
[b]JMeterPlugins-Extras-1.2.1.zip[/b]
ServerAgent-2.2.1.zip
插件安装:
分别解压前两个插件,将解压后文件夹中lib\ext目录下的JmeterPlugins-Standard.jar和JmeterPlugins-Extras.jar拷贝到刚JMETER_HOME\lib\ext目录下
解压ServerAgent-2.2.1.zip
针对JMS类型的Sampler,需要额外的jar包(我这里用的是apache ActiveMQ,将下载的AMQ apache-activemq-5.11.1根目录下的activemq-all-5.11.1.jar拷贝到JMETER_HOME\lib目录下)
启动ActiveMQ:打开dos窗口,进入ActiveMQ解压目录下的bin目录,输入命令:activemq.bat start
Tips:在启动ActiveMQ前,修改conf目录下的activemq.xml中的配置
<transportConnector name="openwire" uri="tcp://0.0.0.0:61616?maximumConnections=65535&wireFormat.maxFrameSize=104857600"/>
上面标记的这个数字为最大连接数,自己设置,如果太小的话会导致发送的请求都被拒绝
启动ServerAgent:进入刚才解压的目录,以管理员身份运行startAgent.bat
哈哈,有木有觉得很麻烦,有点不耐烦了呢?至此,所有的准备工作已经就绪,下面开始使用Jmeter。
创建JMS P2P请求:
启动Jmeter:进入JMETER_HOME\bin目录,以管理员身份运行Jmeter.bat,此时会启动两个窗口,一个是dos窗口(请勿关闭此窗口),另一个是Jmeter的GUI界面添加一个线程组
添加Samper:选择JMS POINT TO POINT
配置Sampler,这一块才是重点,因为要用到JNDI,之前网上看了些文章,都是直接修改ApacheJMeter_core.jar中的jemeter.properties文件,这种方式比较麻烦,涉及重新打包,这里我就直接在Jmeter GUI中配置JNDI的属性,具体见下图:
QueueConnection Factory:连接名
JNDI name Request queue:JNDI请求发送队列名
JNDI name Recieve queue:JNDI接收队列
TimeOut:超时时长
Expiration:过期时间
Communication style:Request only(只发送请求,如果选择Request Response模式,需要设置CorrelationId,并且需要服务端调用getReplyTo()方法来监听请求,这个一直没调通,回头再研究看看能不能通过自己写代码实现)
Content:发送消息内容,这里调用Jmeter的函数助手发送512个字符
Initial Context Factory:org.apache.activemq.jndi.ActiveMQInitialContextFactory(这个在之前从AMQ中拷贝到Jmeter\lib中的jar包里,Jmeter会自动扫描到)
JNDI Properties,queue.Test.Request和queue.Test.Reply,这里定义前面用到的两个变量
Provider URL:tcp://localhost:61616,这个是消息服务器的ip和端口,我这里用的本地的
下面就是添加监听器了,添加一个聚合报告,然后再添加一个jp@gc - PerfMon Metrics Collector监听器,其它的监听器及配置元件根据自己的实际需要来添加,这里贴一个PerfMon Metrics Collector配置
现在,一个JMS PTP的采样器已经配置完成,去设置一个线程开始跑起来吧,下面是一次运行后的结果
聚合报告:
服务器资源占用情况:
相关文章推荐
- 使用Jmeter创建ActiveMQ JMS POINT TO POINT请求,环境搭建、请求创建、插件安装、监听服务器资源等
- JMeter学习(二十九)使用Jmeter创建ActiveMQ JMS POINT TO POINT请求,环境搭建、请求创建、插件安装、监听服务器资源等
- 转: 使用Jmeter创建ActiveMQ JMS POINT TO POINT请求,环境搭建、请求创建、插件安装、监听服务器资源等
- Eclipse下SVN插件安装、使用及SVN服务器的搭建
- CentOS6.8服务器LAMP环境搭建(二) 使用cmake安装MySQL5.7.18
- 在ubuntu上搭建开发环境6---安装和使用vim及其插件(Pathogen和NERDTree)
- Jmeter之性能测试插件PerfMon Metrics Collector监听器,实时监听服务器资源(十四)
- 服务器搭建javaWeb开发环境—svn安装与配置以及使用
- hibernate的环境搭建和安装插件和创建配置文件
- 搭建OpenFire服务器Fastpath插件安装及webchat源码开发环境安装
- VsSingleFileGenerator插件创建,安装和使用
- 转载 "无法启动Web服务器。Web服务器无法找到请求的资源" 或 "unable to start debugging on the web server.the web server could not find the reques"
- activemq 异常 Failed to start ActiveMQ JMS Message Broker. Reason: java.net.SocketException: No such device
- 我学ubuntu - ubuntu下搭建android开发环境(从JDK到ADT插件安装全过程)
- svn服务器安装配置与svn的eclipse的subclipse插件使用
- 如何安装和使用+Http+Watch+服务器+监听工具+【上】
- 搭建SharePoint开发环境——如何在Win7安装SharePointFoundation
- ActiveMQ JMS 在发邮件中的使用
- MyEclipse6.5中搭建Web环境(使用Tomcat6.0服务器)
- 使用VirtualBox安装Ubuntu9.10,搭建java开发环境总结