Author |
Message
|
walterA |
Posted: Sat Dec 05, 2015 8:10 am Post subject: How to load test delivery time? |
|
|
Novice
Joined: 22 Sep 2015 Posts: 20
|
Hi there!
I need to plan a performance test for 2 systems connected one way via MQ Channel and 2 Q Managers like this:
External system A | Q Manager 1 -----> MQ Channel -----> Q Manager 2 | System B
I need to make sure that message delivery time is very small. It means that once system A produces a message it will be available in system B really fast.
How can I do this?
If I use JMeter or similar tool it will show me only response time for system A. But it doesn't measure time from the moment when message is put by external system A till the moment appears in System B
Thank you! |
|
Back to top |
|
 |
bruce2359 |
Posted: Sat Dec 05, 2015 9:38 am Post subject: Re: How to load test delivery time? |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
walterA wrote: |
I need to make sure that message delivery time is very small. It means that once system A produces a message it will be available in system B really fast. |
Really fast? You will need to quantify "really fast." No measurement tool that I'm aware of reports with abstract terms like really slow, slow, fast, really fast, amazingly fast.
You can use the supplied dspmqrte utility to gather route and time data for a test message. _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
walterA |
Posted: Sat Dec 05, 2015 1:36 pm Post subject: Re: How to load test delivery time? |
|
|
Novice
Joined: 22 Sep 2015 Posts: 20
|
bruce2359 wrote: |
walterA wrote: |
I need to make sure that message delivery time is very small. It means that once system A produces a message it will be available in system B really fast. |
Really fast? You will need to quantify "really fast." No measurement tool that I'm aware of reports with abstract terms like really slow, slow, fast, really fast, amazingly fast.
You can use the supplied dspmqrte utility to gather route and time data for a test message. |
Thank you for you answer! I will google dspmqrte
Does it show time that it takes to deliver message from System A to system B through the channel? Will I be able to do this with the load or only with 1 test message?
I want to make sure that once we put a real load, the delivery time will not get worse because of the network, MQ setup or CPU/memory or something else. |
|
Back to top |
|
 |
fjb_saper |
Posted: Sat Dec 05, 2015 1:52 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
You can look at the IBM support pack for performance.
However you're probably not running the same hardware/software/ load consideration so YMMV Your Milage May Vary.
The best way to get a good feel for this is to test it out in an environment as close as possible to production.  _________________ MQ & Broker admin |
|
Back to top |
|
 |
bruce2359 |
Posted: Sat Dec 05, 2015 6:55 pm Post subject: Re: How to load test delivery time? |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
walterA wrote: |
Does it show time that it takes to deliver message from System A to system B through the channel? |
Yes.
walterA wrote: |
Will I be able to do this with the load or only with 1 test message? |
There are workload simulators you might want to investigate.
Lacking other performance monitoring tools, I've seen the dspmqrte run once per second under various application load conditions. Not much overhead for this. If you have no other tools, this might help.
walterA wrote: |
I want to make sure that once we put a real load, the delivery time will not get worse because of the network, MQ setup or CPU/memory or something else. |
See above.
Effective performance analysis and tuning require you to understand your workload and available physical resources to process the workload. The Quick Beginnings manual for your platform will offer initial (minimum) MQ configuration settings.
There are MQ performance tuning documents - search here or google. _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
walterA |
Posted: Sun Dec 06, 2015 8:11 am Post subject: Re: How to load test delivery time? |
|
|
Novice
Joined: 22 Sep 2015 Posts: 20
|
Thank you very much for you explanation!
I have got an idea! What if I add timestamp into the message header when a message is put into the remote Q of system A and then when I consume the message in the system B, compare it with the delivery time.
Is this a good idea? |
|
Back to top |
|
 |
fjb_saper |
Posted: Sun Dec 06, 2015 11:06 am Post subject: Re: How to load test delivery time? |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
walterA wrote: |
Thank you very much for you explanation!
I have got an idea! What if I add timestamp into the message header when a message is put into the remote Q of system A and then when I consume the message in the system B, compare it with the delivery time.
Is this a good idea? |
It might be a fantastic idea or a very bad one... All depends on how synchronized the time between the 2 hosts is  _________________ MQ & Broker admin |
|
Back to top |
|
 |
walterA |
Posted: Sun Dec 06, 2015 11:28 am Post subject: Re: How to load test delivery time? |
|
|
Novice
Joined: 22 Sep 2015 Posts: 20
|
fjb_saper wrote: |
walterA wrote: |
Thank you very much for you explanation!
I have got an idea! What if I add timestamp into the message header when a message is put into the remote Q of system A and then when I consume the message in the system B, compare it with the delivery time.
Is this a good idea? |
It might be a fantastic idea or a very bad one... All depends on how synchronized the time between the 2 hosts is  |
Hmm... but it's doable if the time is in sync? |
|
Back to top |
|
 |
bruce2359 |
Posted: Sun Dec 06, 2015 12:50 pm Post subject: Re: How to load test delivery time? |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
walterA wrote: |
What if I add timestamp into the message header when a message is put into the remote Q ...? |
GMT date and time of creation are automatically inserted into the MQMD when the message is MQPUT.
A message that is destined to be transmitted down the network to a remote qmgr is first put to a transmission queue on the producer qmgr. It is the IBM-supplied Message Channel Agent that MQPUTs the message on the destination queue at the remote qmgr - not the producing application. _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
gbaddeley |
Posted: Sun Dec 06, 2015 9:41 pm Post subject: Re: How to load test delivery time? |
|
|
 Jedi Knight
Joined: 25 Mar 2003 Posts: 2538 Location: Melbourne, Australia
|
bruce2359 wrote: |
walterA wrote: |
What if I add timestamp into the message header when a message is put into the remote Q ...? |
GMT date and time of creation are automatically inserted into the MQMD when the message is MQPUT.
A message that is destined to be transmitted down the network to a remote qmgr is first put to a transmission queue on the producer qmgr. It is the IBM-supplied Message Channel Agent that MQPUTs the message on the destination queue at the remote qmgr - not the producing application. |
The MQMD PutTime only has 1/100 second resolution. MQ can process dozens of messages in that time, so its not very useful for high performance measurements. Been there, done that.
In an end-to-end design the largest latency is usually in the backend applications and DBs. You might benchmark MQ and network latency at 1000 msgs/sec, but the backend might only be capable of processing 100 msgs/sec.
Run a POC test to push an increasing load of typical messages through your MQ infrastructure and measure the overall processing time. eg. 10K msgs, 100K, 1M. Hook up stub consumers and measure their throughput. _________________ Glenn |
|
Back to top |
|
 |
fjb_saper |
Posted: Sun Dec 06, 2015 10:18 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
And don't forget to add varying time at varying levels to try and determine peaks due to stop the world garbage collection (java, .net) _________________ MQ & Broker admin |
|
Back to top |
|
 |
|