Two weeks ago, IBM donated the PerfHarness source code under the MIT license (MIT) to the open source community. Anyone can use PerfHarness as-is or enhance it with additional capabilities. This step is another example of the IBM support of the Open Source community. You can access the PerfHarness source code on GitHub @ https://github.com/ot4i/perf-harness.
For years, IBM teams have been using PerfHarness internally as a performance testing tool for IBM MQ (former WebSphere MQ) and IBM Integration Bus (former WebSphere Message Broker). PerfHarness is a flexible and modular Java package for performance testing of HTTP, SOAP, REST, JMS, MQ transports. It provides advanced capabilities for different protocols, throttled operation (a fixed rate and/or number of messages), multiple destinations, live performance reporting, JNDI, etc.
The tool is capable of conducting tests ranging from a single client to more than 10,000 clients. As an example, the IBM MQ vs. Apache ActiveMQ performance comparison update blog results were received using PerfHarness. Another example of using PerfHarness is the IIB Performance report manual. PerfHarness can be used to performance test many different types of servers, including WebSphere, WebLogic, JBoss, Tomcat, or any HTTP endpoint for that matter. It can also stress test many JMS providers, including IBM MQ and ActiveMQ.
One of the strong features of PerHarness is its orientation on scripting. While some of the performance testing tools mostly rely on GUI for user interaction, PerfHarness is designed to be used in command line mode and allows for a great deal of automation. It is a very sophisticated tool and has advanced options for driving complex performance tests.