Enhancing HL7 Message Processing with Mirth Connect: A Performance Testing Channel

Enhancing HL7 Message Processing with Mirth Connect: A Performance Testing Channel
At 7Med, our team is dedicated to client integration development, ensuring smooth and efficient data exchange within healthcare systems. In our journey, we have frequently encountered server limitations that can hinder optimal performance. You wouldn’t believe how many Mirth servers are out there running on just one core and 1GB of heap size, all while attempting to handle numerous channels.
To tackle these challenges, we’ve developed a performance testing channel specifically for Mirth Connect. This channel not only helps gauge the efficiency of your message processing but also provides insightful metrics to optimize your system’s performance, particularly for larger MDM messages or DICOM channels. Let’s dive into how this channel works and how it can benefit your healthcare integration projects.
Key Features
Our performance testing channel for Mirth Connect offers several key features:
- Automated Message Looping: The channel can send a message to itself multiple times, simulating real-world scenarios where messages need to be processed continuously.
- Performance Metrics: It calculates and logs essential performance metrics, including the time taken to process messages, average processing speed, and the system’s maximum processing capacity per day.
- Detailed Logging: The channel provides a detailed log output with key metrics highlighted for easy readability, helping you quickly identify performance bottlenecks.

How It Works
Here’s a step-by-step breakdown of how the channel operates:
- Initial Setup: The user pastes their own HL7 message into the channel configuration. This can be any message type with any content, but we suggest using an MDM message with a Base64 encoded PDF of roughly 1MB in size or even larger for best results.
- Message ID Configuration: Set the MSG ID to the number of messages you want to send through the loop. This determines how many times the message will be processed.
- Message Processing: The channel sends the message through the Mirth Connect engine the specified number of times, simulating a continuous data flow scenario.
- Time Calculation: It calculates the total time taken to process all the messages and derives key metrics such as average processing speed and message size.
- Log Output: Once the final message has been processed, its transformed state will contain the log output with detailed performance statistics.

Example Log Output
Here’s an example of the log output generated by the channel:
***** PROCESS FINISHED *****
** PROCESSED: ** 100 messages
** TIME ELAPSED: ** 70.0 seconds
** AVG PROCESSING SPEED: ** 419.10 KB/sec
** MESSAGE SIZE: ** 293.37 KB
** PROCESSING CAPACITY: ** 123428.6/day
This output gives you a snapshot of your system’s performance, highlighting the efficiency of message processing and helping you plan for scalability.

Implementing the Channel
To implement this performance testing channel in your Mirth Connect environment, follow these steps:
- Download and Import: Download the channel from our repository and import it into your Mirth Connect server.
- Configure Your Channel:
- Ensure that the port used in the source connector is not already in use. If it is, amend the port accordingly and ensure the same port is set in the destination connector to match.
- Run the Test: Execute the performance test by sending your HL7 message through the channel. Set the MSG ID to the desired number of iterations. Monitor the log output to review the performance metrics.

Why Performance Testing Matters
Regular performance testing of your Mirth Connect setup is crucial for several reasons:
- Identify Bottlenecks: Detect and resolve performance bottlenecks before they impact your operations.
- Optimize Resources: Ensure your system is utilizing resources efficiently, avoiding over-provisioning or under-provisioning.
- Scalability Planning: Understand your system’s capacity and plan for future growth without compromising performance.
Supporting Older Versions
Our performance testing channel is freely available and supports Mirth Connect version 4.0.0 and up. However, if you need support for older versions of Mirth Connect, we can recreate the channel upon request to meet your specific needs.
Hi, I am a student and I would like to be able to perform load tests on a Mirth Connect installation, so I would really appreciate it if you could provide me with your channel “MGMT – 7MED – Performance TEST” for Mirth version 3.8.0. Thank you for your attention.
The Customer refers to us great performance issues in test environment. I hope this channel could help to investigate performance degradation