Digital Developer Conference: Cloud Security 2021 – Build the skills to secure your cloud and data Register free


Performance and scalability testing are an essential requirement for any application development. Testing provides insights into system and application limitations and identifies bottlenecks that may impede the scalability of an application or its performance.

PerfHarness is a flexible and modular Java package for performance testing of HTTP, SOAP, JMS, MQ, and TCP/IP transports. The package provides advanced capabilities for different protocols, from throttled operation and end-point distribution to performance reporting and many more.

For years, IBM teams have used PerfHarness internally as a performance-testing tool for IBM MQ and IBM Integration Bus. One of its strong features is its orientation on scripting. While many performance-testing tools rely primarily on a GUI for user interaction, PerfHarness uses the command-line mode and allows for a great deal of automation.

With its history as an internal IBM tool, PerfHarness is very sophisticated and has advanced options for driving complex performance tests.

Why should I contribute?

Different applications can be exposed to significantly different workloads and use different technology protocols for their interfaces.

The unique performance requirements of the applications (response times, achievable throughput, resource usage, etc.) may drive differing requirements on the reporting metrics. The flexible and modular composition of PerfHarness enables new packages to be added to enhance and customise the tool for application and test requirements.

What technology problem will I help solve?

PerfHarness ensures that inhibitors to an application’s scalability and performance are identified and addressed before they impact users. It also allows you to simulate expected workload to aid capacity planning requirements and system resource limitations.

How will PerfHarness help my business?

PerfHarness lets you test your application performance and scalability. By doing so, you can identify potential application bottlenecks that may affect user experience and better plan for capacity requirements based on expected workload characteristics.