使用jmeter测试RabbitMQ

JMeter安装RabbitMQ测试插件 在使用JMeter进行RabbitMQ测试时,你可以使用JMeter的插件来进行扩展和支持。安装RabbitMQ测试插件是实现这一目标的关键步骤之一。整体流程如下:先下载AMQP插件源码,可以通过ant+ivy在本地编译成jar包,再将jar包导入JMeter目录下,重启JMeter生效。Apache Ant 是一个基于 Java 的构建工具。Ant 可用于自动化构建和部署 Java 应用程序,使开发人员更轻松地管理其项目。Ant 与 Ivy 集成良好,可用于管理项目依赖项。 阅读详情

1.下载AMQP插件

sanzao/Jmeter-rabbitmqhttps://gitee.com/sanzao/Jmeter-rabbitmq上面支持中文有问题,可自行根据 new String( String.getBytes (“UTF-8”),“UTF-8”) 更改返回值的编码格式重新编译打包即可。

 2.将下载的插件放到Jmeter--lib/ext目录,然后启动程序

可以看到"AMQP Publisher" 和 "AMQP Consumer" 2个选项

备注:除了ApacheJMeter-rabbitmq.jar还依赖 amqp-client-5.7.3.jar一起放到jmeter的\lib\ext下。

3.AMQP Publisher/Consumer  请求 介绍

• Exchange( 交换机 ): 如果此处不填写,使用默认名称 --(AMQP default)
• Exchange Type: 分别是 direct( 单播 ) , fanout( 广播 ) , topic( 组播 ) , headers ,每种类型路由的策略不同。
• direct :如果一个队列绑定到该交换机上,并且当前要求路由键为   X   ,只有路由键是   X   的消息才会被这个队列转发。默认交换机便是该类型。
fanout :一个发送到交换机上的消息都会被转发到与该交换机绑定的所有队列上。   Fanout   交换机发消息是最快的。
• topic :将路由键和某模式进行匹配,可以理解成模糊处理 ( 不是特别明白 )
• Durable( 持久化 ) :具有这个标志的队列和交换机会在重启之后重新建立,它表示说在队列当中的消息会在重启后恢复。
• Message TTL(Time-To-Live Extensions) :消息过期时间,时间为毫秒
• Exclusive( 排他性队列 ) :创建一个只有自己可见的队列,即不允许其它用户访问,在没有消费者来消费的时候,他就会自动的删除
• Expire( 超期时间 ) :该值必须为正数 ( 与消息 TTL 不同,该值不可以为 0) ,所以如果该参数设置为 1000 ,则表示该 queue 如果在 1 秒钟之内未被使用则会被删除。 
• Auto delete :当没有队列或者其他 exchange 绑定到此 exchange 的时候,该 exchange 被销毁
• Prefect Count :消费者自身处理能力有限,从 rabbitmq 获取一定数量的消息后,希望 rabbitmq 不再将队列中的消息推送过来,当对消息处理完后(即对消息进行了 ack ,并且有能力处理更多的消息)再接收来自队列的消息。在这种场景下,我们可以通过设置 basic.qos 信令中的 prefetch_count 来达到这种效果 ( 一般不用设置 )

 4.RabbitMQ页面截图

5.通过jmeter实现请求

发送的消息体内容

 返回的结果树查看结果

此时也可以查看RabbitMQ的日志

 [com.research.callcenter.customer.rabbit.ReceiverOfOrderChange:60] INFO  com.research.callcenter.customer.rabbit.ReceiverOfOrderChange - mq消费同步数据:{"userId":"19d0ccd7074611eaa1b6fa163e61d8bc","loanId":"","eventType":""}

 推送成功能被成功消费即可。

附:

近期做jmeter压力测试的一个报错,就是jmeter执行脚本结束后报:

The JVM should have exitted but did not.

The following non-daemon threads are still running (DestroyJavaVM is OK):
Thread[DestroyJavaVM,5,main], stackTrace:

 如下所示:

原因:在执行java请求时会在jmeter线程之外,另外启动java线程,导致在脚本执行结束时JVM无法退出。

修改方法:在jmeter的bin目录下,修改jmeter.properties 中的jmeterengine.force.system.exit=true,去掉前面的#号,让配置生效。

 

JMeter安装RabbitMQ测试插件 编程学习 右键点击线程组,选择"Add" -> “Sampler” -> “RabbitMQ Consumer”,添加一个RabbitMQ消费者。通过以上步骤,我们可以在JMeter中安装和配置RabbitMQ测试插件,并使用它进行性能测试。在本篇文章中,我们将学习如何在JMeter中安装和配置RabbitMQ测试插件,并使用它进行消息队列的性能测试。右键点击线程组,选择"Add" -> “Sampler” -> “RabbitMQ Publisher”,添加一个RabbitMQ发布者。步骤1:安装JMeter。 阅读详情

相关推荐

Jmeter与RabbitMQ集成的性能测试方法与源码解析

随着IT技术的发展,现代的网络应用系统变得日益复杂,性能测试逐渐成为保证软件质量不可或缺的重要环节。Apache JMeter作为一个开源的性能测试工具,以其强大的功能和灵活性在业界得到了广泛的认可。JMeter可以用于测试静态和动态资源的性能,如静态文件、Java小服务程序、CGI脚本、Java对象、数据库、FTP服务器等。它的主要用途包括负载测试、功能测试、服务器/网络或对象的基准测试。消息队列(Message Queue,简称MQ)是一种应用程序之间的通信方法。

weixin_33750664的博客 1140

Jmeter对RabbitMQ压力测试

持久化队列和非持久化队列的区别是,持久化队列会被保存在磁盘中,固定并持久的存储,当服务重启后,该队列会保持原来的状态在RabbitMQ中被管理,而非持久化队列不会被保存在磁盘中,服务重启后队列就会消失。持久化队列和非持久化队列的区别是,持久化队列会被保存在磁盘中,固定并持久的存储,当服务重启后,该队列会保持原来的状态在RabbitMQ中被管理,而非持久化队列不会被保存在磁盘中,服务重启后队列就会消失。设置了持久化的消息,即使当时Consumer没有在监听,等Consumer启动后也能够收到该消息。

testbaibai的博客 4126

jmeter-rabbitmq插件

jmeter放入rabbitmq-jar包后,可以直接测试rabbitmq功能测试或者压测

Jmeter之RabbitMQ插件源码打成jar包

Jmeter之RabbitMQ插件源码打成jar包 1.获取RabbitMQ 插件的jar包 Jmeter-Rabbit-AMQP插件源码: https://github.com/jlavallee/JMeter-Rabbit-AMQP 2.将源码打成jar包 a.在eclipse创建maven项目,根据源码ivy.xml配置pom文件,版本要一致 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.

DDJ_TEST的博客 778

jmeter测试rabbitmq资源包

jmeter测试rabbitmq资源包,导入即用,亲测有效 导入目录:apache-jmeter-5.1.1\lib\ext 包括: ApacheJMeter-rabbitmq amqp-client-5.2.0 apache-jmeter-5.1.1(5.4.1 也可用)

用Jmeter测试RabbitMQ

jmeter测试Rabbitmq的方法 AMQP Publisher/Consumer  请求 介绍 Exchange(交换机):如果此处不填写,使用默认名称--(AMQP default) Exchange Type:分别是direct(单播),fanout(广播),topic(组播),headers,每种类型路由的策略不同,公司用direct 和 fanout 这2种路由居多 direct:如果一个队列绑定到该交换机上,并且当前要求路由键为  X  ,只有路由键是  X  的消息才会被这个队列转发。默认交换机便是该类型。 fanout:一个发送到交换机上的消息都会被转发到与该交换机绑定的所有队列上。  Fanout  交换机发消息是最快的。 topic:将路由键和某模式进行匹配,可以理解成模糊处理(不是特别明白) Durable(持久化):具有这个标志的队列和交换机会在重启之后重新建立,它不表示说在队列当中的消息会在重启后恢复 Redeclare(重定义):此功能不是特别清楚 Message TTL(Time-To-Live Extensions):消息过期时间,时间为毫秒 Exclusive(排他性队列):创建一个只有自己可见的队列,即不允许其它用户访问,在没有消费者来消费的时候,他就会自动的删除 Expire(超期时间):该值必须为正数(与消息 TTL 不同,该值不可以为 0),所以如果该参数设置为 1000 ,则表示该 queue 如果在 1 秒钟之内未被使用则会被删除。 

Jmeter测试RabbitMQ 怎么获取RabbitMQ 插件的jar包?

Jmeter测试RabbitMQ 怎么获取jar包? 很多地方获取吉安人包需要积分兑换 1.下载AMQP插件 https://github.com/jlavallee/JMeter-Rabbit-AMQP(github 上面支持中文有问题) github上面有源码,可以通过ant+ivy在本地进行打包(下载IDEA实践成功) (这种方式我运行失败了) 看到里面有一个 ivy.xml文件 里面是所需要的依赖包 2.新建一个maven项目。pom引入 ivy.xml列出依赖版本 <project

qq_38368494的博客 1880

RC电路(一):微分|积分

的取值不同,会导致输出波形和输入波形之间的关系也不同,由此也会产生不同的应用。输出为0,随着电容充满电,运放-输入端得到的分压为正最大值,可等效成一个电压源,且电压不可突变,此时电流反向为最大值,开始充电时的容抗为0,电压不可突变则电压差为0,运放。开始充电时的容抗为0,电压不可突变则电压差为0,运放。输入端得到的分压也不可突变,随着电容放完电,于是。,因电容上电压不能突变(来不及充电,相当于短路,由上分析可得积分运算电路中,输出为运放的负最大峰值,随着电容充满电,输出为运放的正最大峰值,随着电容放完电,

既有随处可栖的江湖,也有追风逐梦的骁勇! 1万+

使用Jmeter测试RabbitMQ的性能极限

Jmeter怎么安装AMQP相关的插件?浏览:https://blog.youkuaiyun.com/Xeon_CC/article/details/114755761 浏览这个文章以后。需要自行在Maven中央仓库下载amqp-client-3.4.4.jar,拷贝此jar包到jmeter安装目录的lib目录下,并且把打包以后的JMeterAMQP.jar拷贝到Jmeter安装目录下的 lib/ext 目录下。 我使用的是Jmeter3.1。然而Jmeter5.2不能跑这个兔子。 测试环境: CPU:i.

Xeon_CC的博客 1078

FPGA实现Gardner环定时同步:Verilog代码与Testbench实战解析

本文深入解析了在FPGA上实现Gardner环定时同步的完整过程,详细阐述了其非数据辅助的定时误差检测原理。通过Verilog代码实战,展示了内插滤波器、定时误差检测器、环路滤波器和数控振荡器等核心模块的设计,并提供了完整的Testbench验证方法,帮助开发者解决数字通信系统中的时钟同步难题。

gpt4scribbler的博客 576

灰度发布、蓝绿部署、双活架构与数据同步/备份/迁移

本文系统介绍了现代互联网系统的核心部署策略与数据管理技术体系。主要内容包括:1)三种服务发布策略(灰度发布、蓝绿发布、滚动发布)的原理、实现方式和适用场景对比;2)高可用架构设计(同城双活、异地双活、异地多活)的技术方案;3)数据同步机制、备份策略与迁移方案的设计要点。文章通过架构图、流程图和配置示例详细展示了各类技术的实施方法,并分析了不同方案的优劣及风险控制措施,为构建高可用、高可靠的分布式系统提供了完整的技术指南。

zane的博客 515

蓝易云 - 使用JMeter安装RabbitMQ测试插件的步骤

现在,您可以在JMeter中使用RabbitMQ插件进行RabbitMQ的性能测试了。您可以配置AMQP Publisher来发送消息到RabbitMQ,或者使用其他插件来模拟不同的RabbitMQ操作。以上是安装RabbitMQ测试插件的基本步骤。根据您的具体需求和JMeter版本,可能会有一些细微的差异,但总体流程应该是相似的。请注意,为了使插件正常工作,您需要提供正确的RabbitMQ服务器配置和认证信息。确保在使用插件之前正确配置这些参数。

高性价比服务器就选:蓝易云 326

【电子元件篇】电力电子中的变压器原理、作用、选型与测量指南-超简单解读

变压器虽小,却是电力电子的 “关键纽带”——从识别符号型号,到理解 “传交流隔直流” 的特点,再到按用途选参数、用万用表检测,只要抓住 “场景对应核心” 的逻辑,就能轻松掌握它的用法。

2301_81299416的博客 3026

Jmeter_RabbitMQ性能测试

【前言】   RabbitMQ消息的传递并非使用HTTP协议,而是AMQP协议,因此除非开发暴露一个HTTP请求接口出来,否则无法直接使用HTTP请求发送json串数据,实现数据publish到MQ中。 【测试方法】   前提:有可视化的RabbitMQ管理页面;   方法:利用Jmeter,录制RabbitMQ管理页面的publish message操作请求,在不经过上游调度系...

weixin_30924239的博客 754

OC5021B 100V宽电压输入 LED车灯/大功率照明 DC降压型恒流驱动器

适用于LED大功率汽车大灯/大功率照明 OC5021B 100V宽电压输入 5A电流设计 DC-DC降压型恒流驱动IC

Handsome63841990的博客 2417

Flutter加载本地HTML的优雅解决方案:轻松实现富文本展示

通过以上步骤,我们实现了Flutter加载本地HTML的完整流程,并简单介绍了如何通过WebView与HTML页面进行交互。HTML文件作为一种灵活、易维护的富文本展示方式,能有效提升Flutter应用的内容呈现能力。这种方法在展示新闻、资讯或帮助文档等内容时非常有用,能够让开发者灵活调整内容的样式和排版。希望这篇文章能对你在Flutter开发中的HTML加载有所帮助!

四楼没电梯的专栏 3644

使用JMeter安装RabbitMQ测试插件的步骤

现在,您可以在JMeter中使用RabbitMQ插件进行RabbitMQ的性能测试了。您可以配置AMQP Publisher来发送消息到RabbitMQ,或者使用其他插件来模拟不同的RabbitMQ操作。以上是安装RabbitMQ测试插件的基本步骤。根据您的具体需求和JMeter版本,可能会有一些细微的差异,但总体流程应该是相似的。请注意,为了使插件正常工作,您需要提供正确的RabbitMQ服务器配置和认证信息。确保在使用插件之前正确配置这些参数。

高性价比服务器就选:蓝易云 248

最优化问题——一维搜索(一)

最优化问题——一维搜索 1. 一维搜索的引入 1.1 从非线性规划问题到一维搜索 在前面的文章中,我们提到了基于迭代的非线性规划问题的求解思路。在求解过程中,我们提到了在每一步的迭代中都需要对计算步长因子,其计算公式为: λk=minλf(xk+λp)λ_k=min_{λ}f(x_k+λp)λk​=minλ​f(xk​+λp) 我们将f(xk+λp)f(x_k+λp)f(xk​+λp)视为λ的一元函数,我们的目标就是求这个一元函数的极小值。对于这个问题,我通常的求解方式为一维搜索。 1.2 一维搜索的基本形

hei653779919的博客 7361
上一篇: 使用Jmeter做性能测试的一些总结
下一篇: 使用jmeter手工录制脚本
RunMode-likf
博客等级 码龄5年 17粉丝 11原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值