MQ

MQ

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only

Running a JMS Performance Test with IBM MQ using JMSPerfHarness

By Paul Harris posted Tue December 05, 2023 10:18 AM

  

Running a JMS Performance Test with IBM MQ using JMSPerfHarness

JMSPerfHarness (a component of PerfHarness) is a JMS client scaling, performance test tool made available on GitHub at https://github.com/ot4i/perf-harness). It provides an extensive set of performance messaging functionality, as well as many other features such as throttled operation (a fixed rate and/or number of messages), multiple destinations and live performance reporting. It is one of the many tools used by the IBM MQ performance team at Hursley, for tests ranging from a single client to more than 10,000 clients.

A tutorial on downloading, building and running JMSPerfHarness tests using the supplied IBM JMS or Apache Qpid JMS providers is now available here.

What Types of Application Can be Simulated?

Each JMSPerfHarness process can start 1-n worker threads of the same type (module). The types of module that a worker can specify are listed below:

  • Sender : Sends messages to a named queue destination.
  • Receiver : Receives messages from a named queue destination. This can be used in conjunction with the Sender module.
  • PutGet : Sends a message to queue then retrieves the same message (using CorrelationId).
  • Requestor : Sends a message to a queue then waits for a corresponding reply (using CorrelationId) on a second queue.
  • Responder : Waits for a message on a queue then replies to it on another queue. This can be used in conjunction with the Requestor module.
  • Publisher : Sends messages to a named topic destination.
  • Subscriber : Subscribes and receives messages from a named topic. This can be used in conjunction with the Publisher module.
0 comments
11 views

Permalink