转载自 http://www.cnblogs.com/yangxia-test

准备工作

  • 针对JMS类型的Sampler,需要额外的jar包(这里用的是apache ActiveMQ,将下载的AMQ apache-activemq-5.5.0根目录下的activemq-all-5.5.0.jar拷贝到JMETER_HOME\lib目录下)
  • 启动ActiveMQ:打开dos窗口,进入ActiveMQ解压目录下的bin\win32目录,输入命令:activemq.bat start

    • Tips:在启动ActiveMQ前,修改conf目录下的activemq.xml中的配置

      <transportConnector name="openwire" uri="tcp://0.0.0.0:61616?maximumConnections=65535&amp;wireFormat.maxFrameSize=104857600"/>

      上面标记的这个数字为最大连接数,自己设置,如果太小的话会导致发送的请求都被拒绝

  • 启动ServerAgent:进入刚才解压的目录,以管理员身份运行startAgent.bat

创建JMS测试计划

  • 启动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压力测试(转载)的更多相关文章

  1. 【转】使用Jmeter针对ActiveMQ JMS Point To Point压力测试

    准备工作 针对JMS类型的Sampler,需要额外的jar包(这里用的是apache ActiveMQ,将下载的AMQ apache-activemq-5.5.0根目录下的activemq-all-5 ...

  2. Jmeter(三十四) - 从入门到精通进阶篇 - 参数化(详解教程)

    1.简介 前边三十多篇文章主要介绍的是Jmeter的一些操作和基础知识,算是一些初级入门的知识点,从这一篇开始我们就来学习Jmeter比较高级的操作和深入的知识点了.今天这一篇主要是讲参数化,其实前边 ...

  3. Jmeter(三十八) - 从入门到精通进阶篇 - 命令行运行JMeter详解(详解教程)

    1.简介 前边一篇文章介绍了如何生成测试报告,细心地小伙伴或者同学们可以看到宏哥启动Jmeter生成测试报告不是在gui页面操作的,而是在gui页面设置好保存以后,用命令行来生成测试报告的.这一篇宏哥 ...

  4. Jmeter(三十)_TimeShift函数在JSR223中的使用

    今天学习一下TimeShift函数在JSR223中的使用方法. 关联之前的一篇时间戳文章:Jmeter(十二)_打印时间戳 首先,创建线程组,在线程组下面创建一个JSR223采样器 选择Groovy语 ...

  5. Jmeter(三十六) - 从入门到精通进阶篇 - 设置负载阶梯式压测场景(详解教程)

    1.简介 在性能测试中,有时需要模拟一种实际生产中经常出现的情况,即:从某个值开始不断增加压力,直至达到某个值,然后持续运行一段时间,然后继续加压达到某个值持续运行,如此循环直到达到预期的峰值,运行一 ...

  6. Jmeter(三十八)while控制器实现ssh三次重连

    在jmeter中,可以使用SSH协议连接主机进行相关操作, 步骤如下 首先添加一个ssh command  我们的测试交流群:317765580 在command中填写远程连接的必要信息 结果树中可以 ...

  7. Jmeter(三十六)_运行过程中改变负载

    顾名思义,jmeter在做性能测试时,可以在不停止脚本的情况下修改负载压力,达到期望的测试效果.我们将通过Constant Throughput Timer(吞吐量计时器)和Beanshell服务器来 ...

  8. Jmeter(三十五)_分布式

    jmeter分布式简单步骤说明: 1:添加远程服务器IP到配置文件 在JMETER_HOME / bin / jmeter.properties中,找到名为“ remote_hosts ” 的属性,并 ...

  9. Jmeter(三十五)_精确实现网页爬虫

    Jmeter实现了一个网站文章的爬虫,可以把所有文章分类保存到本地文件中,并以文章标题命名 它原理就是对网页提交一个请求,然后把返回的所有值提取出来,利用ForEach控制器去实现遍历.下面来介绍一下 ...

随机推荐

  1. Excel2010隔行变色的实现方法 [也可套用格式即可]

    这样excel隔行变色的效果,excel会自动隔行填充不同颜色. 公式说明: =MOD(ROW(),2)=0,实现的效果是偶数行自动填充底纹颜色 =MOD(ROW(),2)=1,实现的效果是奇数行自动 ...

  2. 《算法》第四章部分程序 part 16

    ▶ 书中第四章部分程序,包括在加上自己补充的代码,Dijkstra 算法求有向 / 无向图最短路径,以及所有顶点对之间的最短路径 ● Dijkstra 算法求有向图最短路径 package packa ...

  3. ubuntu 14.04 安装 Apache Thrift 0.10

    1.到官网下载源码压缩文件 https://thrift.apache.org/download 2.安装依赖软件,可以参考 https://thrift.apache.org/docs/instal ...

  4. poi excel 合并单元格

    结论:final CellRangeAddress cra = new CellRangeAddress(rowId, rowId + rowSkip,        colId, colId + c ...

  5. 01.制作ico图标的工具

    制作ico图标的工具在线转换地址: http://lvwenhan.com/convertico/ http://lvwenhan.com/convertico/Converticon.swf

  6. 试用bus hound来分析STM32CubeMX来生成USB_HID_Mouse工程

    Bus Hound (x64). Complements of www.perisoft.net STM32_HID_mouse Device - Device ID (followed by the ...

  7. vue父子组件嵌套的时候遇到 - Component template should contain exactly one root element. If you are using v-i

    转自:https://blog.csdn.net/yangyiboshigou/article/details/72084619

  8. 小柒2012 / spring-boot-quartz

    spring-boot-quartz 基于spring-boot+quartz的CRUD动态任务管理系统,适用于中小项目. 基于spring-boot 2.x +quartz 的CRUD任务管理系统: ...

  9. sizeof 空类

    C++标准规定类的大小不为0,空类的大小为1,当类不包含虚函数和非静态数据成员时,其对象大小也为1. 如果在类中声明了虚函数(不管是1个还是多个),那么在实例化对象时,编译器会自动在对象里安插一个指针 ...

  10. 5.Java中的数组.md

    1.Java的数组定义 Java中的定义有两种形式: type[] arraryName; //推荐形式 type arrayName[]; //不推荐 前一种有更好的语义,可读性更好.但是需要注意的 ...