消息队列是目前的主流中间件,我们在日常测试过程中,无论是接口还是压力测试,都会遇到需要处理这些中间件数据的情况。本文以Activemq的Topic为例,说明如何基于Jmeter实现消息队列数据的发送和接受。

ActiveMQ

Apache ActiveMQ是Apache软件基金会研发的开源消息中间件,它是基于JMS规范实现的。JMS( Java Message Service ) Java 消息服务,是Java EE的规范,JMS允许应用程序基于Java平台创建、发送、接收和读取消息。它使分布式通信耦合度更低,消息服务更加可靠以及支持异步消息

JMS常见2种消息模型

• 点对点(Queues队列) 生产者生产消息,消费者监听消息,消息只能被一个消费者取走

• 广播/订阅(Topics 队列) 生产者广播消息,订阅者监听消息,消息可以被所有订阅者取走

ActiveMQ的安装非常简单,官网下载安装包,启动完服务出现如下控制台界面,说明安装成功

Jmeter发布和消费消息

• Jmeter内置对ActiveMQ的支持,Jmeter的lib里自带ApacheJmeter_jms.jar包,申明调用接口,在使用Jmeter处理消息队列以前,首先将activemq 下的 "activemq-all-5.x.x.jar" 复制到 "apache-jmeter-x.xxlibext" 文件夹下作为JMS接口的具体实现类。

• 新建Jmx脚本,在线程组下添加JMS发布者

• 运行脚本,查看结果树中显示运行成功

• 进入JMS控制台,发现新增上述步骤中添加的testtopic1,并且其中消息数随着脚本运行递增。

• 新增JMS订阅者,订阅上述步骤中的消息队列,运行脚本能够看到消息被消费

上述内容是以activemq为例的消息队列处理,目前业界主流的消息队列还有基于AMQP协议的RabbitMQ,预知后事如何,请听下回分解。

作  者:Testfan Kitty

出  处:微信公众号:自动化软件测试平台

版权说明:欢迎转载,但必须注明出处,并在文章页面明显位置给出文章链接

Jmeter中间件处理-ActiveMQ的更多相关文章

  1. 基准测试-jmeter压力测试activeMQ之一环境安装配置

    jmeter压力测试activeMQ 摘要:linux(CentOS)单机activeMQ安装.window(2008Server)Jmeter配置activeMQ包.Jmeter配置linux监控 ...

  2. Jmeter中间件处理-缓存

    前言 消息队列和缓存是目前主流的中间件,我们在日常测试过程中,无论是接口还是压力测试,都会遇到需要处理这些中间件数据的情况.本文以Redis对缓存做一个简单的介绍,并基于Jmeter实现缓存数据处理. ...

  3. jmeter向ActiveMQ发送消息_广播/订阅(Topics 队列)

    问题描述:测试中需要模拟大量设备的消息上报到平台,但是实际测试中没有那么多设备,所以采取用jmeter直接往ActiveMQ模拟发送设备消息 解决思路:获取平台采取的是Queues还是Topics : ...

  4. MQ学习(二)----ActiveMQ简介(转)

    1.  什么是ActiveMQ ActiveMQ是一种开源的,实现了JMS1.1规范的,面向消息(MOM)的中间件,为应用程序提供高效的.可扩展的.稳定的和安全的企业级消息通信.ActiveMQ使用A ...

  5. Apache ActiveMQ实战(1)-基本安装配置与消息类型

    ActiveMQ简介 ActiveMQ是一种开源的,实现了JMS1.1规范的,面向消息(MOM)的中间件,为应用程序提供高效的.可扩展的.稳定的和安全的企业级消息通信.ActiveMQ使用Apache ...

  6. ActiveMQ详解

    Apache ActiveMQ介绍 使用MQ的场景 ActiveMQ的安装 收发消息的简单实现 ActiveMQ内部实现 queue和topic 消息持久化 kahadb原理 最关键的6个配置 Apa ...

  7. 消息队列之 ActiveMQ(山东数漫江湖)

    简介 ActiveMQ 特点 ActiveMQ 是由 Apache 出品的一款开源消息中间件,旨在为应用程序提供高效.可扩展.稳定.安全的企业级消息通信. 它的设计目标是提供标准的.面向消息的.多语言 ...

  8. 消息队列之 ActiveMQ

    简介 ActiveMQ 特点 ActiveMQ 是由 Apache 出品的一款开源消息中间件,旨在为应用程序提供高效.可扩展.稳定.安全的企业级消息通信. 它的设计目标是提供标准的.面向消息的.多语言 ...

  9. 手把手教你如何玩转消息中间件(ActiveMQ)

    手把手教你如何玩转消息中间件(ActiveMQ) 2018年07月15日 18:07:39 Cs_hnu_scw 阅读数 12270 标签: 中间件消息中间件ActiveMQ分布式集群 更多 个人分类 ...

随机推荐

  1. Java工程师学习指南第6部分:深入理解JVM虚拟机

    本文整理了微信公众号[Java技术江湖]发表和转载过的JVM虚拟机相关优质文章,想看到更多Java技术文章,就赶紧关注本公众号吧吧. JVM原理分析,看了都说好 JVM 深入学习:Java 解析 Cl ...

  2. NDK学习笔记-使用现有so动态库

    前面将的都是如何使用C/C++文件生成so动态库,那么在使用别人的so动态库的时候应该怎么做呢?这篇文章就是使用一个变声功能的动态库,完成对于以有so动态库的说明. 动态库来源 在互联网中,有着许许多 ...

  3. 通过IP得到IP所在地省市

    /// <summary> /// 通过IP得到IP所在地省市(Porschev) /// </summary> /// <param name="ip&quo ...

  4. MemCache可视化客户端管理及监控工具TreeNMS

    参考地址:https://www.cnblogs.com/li150dan/p/9529054.html

  5. formSelects设置不可选择

    看效果 还把颜色换成灰色 js代码formSelectsId是formSelects的id,不是元素的id,而是xm-select的值 layui.formSelects.disabled(" ...

  6. golang写入csv

    package main import ( "encoding/csv" "fmt" "os" ) func main() { file, ...

  7. c++ 行为型_备忘录模式(Memento)

    行为型_备忘录模式(Memento) 作用场景: 当意图在对象外面保存对象的内部状态,但是又不想破坏对象的封装性,就可以考虑备忘录模式. 解释: 其参与者包括 1.Memnto(备忘录,如下列Coun ...

  8. python 1秒启动一个下载服务器

    在Linux系统中,进入要下载文件的目录,用python执行以下命令.启动一个简单的文件下载服务器. python2: [root@saltstack-1 apps]# python -m Simpl ...

  9. RocketMQ源码学习--消息存储篇

    转载. https://blog.csdn.net/mr253727942/article/details/55805876 1.序言 今天来和大家探讨一下RocketMQ在消息存储方面所作出的努力, ...

  10. 整体二分(模板一)静态区间第K大

    #define IOS ios_base::sync_with_stdio(0); cin.tie(0); #include <cstdio>//sprintf islower isupp ...