目录
编写jndi.properties添加到ApacheJMeter.jar 中
配置 Jmeter 进行测试 点对点 (Queues 队列)
配置 Jmeter 进行测试 发布/订阅 (Topic 队列)
前言
在进行性能测试时,我们需要测试应用程序在不同负载和压力下的表现。
JMS 介绍:JMS 即 Java 消息服务(Java Message Service)应用程序接口,是一个 Java 平台中关于面向消息中间件(MOM)的 API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。
本文只测试 ActiveMQ,其他消息中间件应该同理.
ActiveMQ 介绍
JMS 常见 2 种消息模型:
- 点对点 (Queues 队列)
生产者产生消息,仍 1 条消息给 ActiveMQ,消费者监听 ActiveMQ,从 ActiveMQ 中取走 1 条消息,并销毁这个消息,且只会有一个监听的消费者取走.其他消费者不会取走信息 - 广播/订阅 (Topics 队列)
广播出 1 条消息给 ActiveMQ,订阅监听 ActiveMQ,所有当时监听 ActiveMQ 的订阅都可以取到这条消息,并销毁这个消息,
3 . 虚拟 Topics
为什么说 2 种消息模型,这里会有第三种,因为 Topics 队列的性质决定,当我要发消息给很多订阅,但是如果订阅监听服务挂掉,就不能收到这个消息,导致消息未发布到这个订阅,所以引申出第三个消息模型,虚拟 Topics.
广播出 1 条消息给 ActiveMQ Topics 队列,ActiveMQ 会自动转换给要分发消息的订阅 Queues 队列.然后订阅监听 Queues 队列去取走消息.这 2 种消息模型的结合,产生出第三种消息模型,虚拟 Topics.
准备工作
以 ActiveMQ 为例子,使用 jmeter 测试 JMS.
- Jmeter 版