|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Express messages with disk IO |
« View previous topic :: View next topic » |
Author |
Message
|
Gideon |
Posted: Tue Jan 05, 2010 10:26 am Post subject: Express messages with disk IO |
|
|
Chevalier
Joined: 18 Aug 2009 Posts: 403
|
On a WIndows platform, on an Opteron machine, I ran a burst of express messages to WMQ queues, which were processed by WMB successfully.
On this test I get almost no disk IO
On the production machine, I ran a burst of express messages to an AIX on a System P 6, and topas reports about 20% disk IO on /var/mqm
So I windows I get no disk IO on express, but on AIX I get 20% disk IO on express using the same burst.
Any idea of why this is happening |
|
Back to top |
|
 |
smdavies99 |
Posted: Tue Jan 05, 2010 10:33 am Post subject: |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
My guess is that the persistency of the messages differ between the two platforms. _________________ WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995
Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions. |
|
Back to top |
|
 |
Gideon |
Posted: Wed Jan 06, 2010 1:41 pm Post subject: |
|
|
Chevalier
Joined: 18 Aug 2009 Posts: 403
|
During a run, filemon on AIX reported that I was getting frequent reads and writes to the file 'q'.
The 'q' file is in the directory /raid/mqm/qmgrs/SIXQM/<qname>/queues, for example:
Code: |
/raid/mqm/qmgrs/SIXQM/queues/INAZA0/q |
This is the file that filemon reports as the most active file during the non-persistent run.
Since we get about 20% disk IO on teh non-persistent run, and 80% disk IO on the persistent run, it appears that available memory is used up, and the data spills over to the 'q' file, during the non-persistent run.
The more data I send, the more I see disk IO on non-persistent runs. This seems to suggest we have a spill over issue.
I checked the qm.ini file, and it shows the following memory allocation:
Code: |
TuningParameters
DefaultQBufferSize 1048576
DefaultPQBufferSize 1048576 |
This is the maximum amount of memory you can set the queue sizes to. However, the documentation says:
Note: The queue buffers are allocated in shared storage, so consideration must be given to whether the agent process or application process has the memory availability for all the required shared memory segments.
Then I took the Tuning Parameters group of stanza's out of the qm.ini, I restarted the qmgr, and ran the test, and I get exactly the same amount of Disk IO for non-persistent data. So either the TuningParameters is not enabled, or I don't have enought available memory.
So I have 2 questions:
Is there anything else I have to do enable TuningParameters on AIX ?
How can I ensure that all processes have the memory availability for the required shared memory segments ?
Thanks |
|
Back to top |
|
 |
mvic |
Posted: Wed Jan 06, 2010 2:04 pm Post subject: |
|
|
 Jedi
Joined: 09 Mar 2004 Posts: 2080
|
|
Back to top |
|
 |
Gideon |
Posted: Wed Jan 06, 2010 3:50 pm Post subject: |
|
|
Chevalier
Joined: 18 Aug 2009 Posts: 403
|
Actually, I wrote the qm.ini with a space gwtween the name/value, instead of an equal "=" sign. (I was thinking of the Windows Registry)
I rewrote the qm.ini and restarted the qmgr, but I still get disk IO
Here is the new qm.ini, but it seems to look good
Code: |
#*******************************************************************#
#* Module Name: qm.ini *#
#* Type : WebSphere MQ queue manager configuration file *#
# Function : Define the configuration of a single queue manager *#
#* *#
#*******************************************************************#
#* Notes : *#
#* 1) This file defines the configuration of the queue manager *#
#* *#
#*******************************************************************#
ExitPath:
ExitsDefaultPath=/var/mqm/exits/
ExitsDefaultPath64=/var/mqm/exits64/
#* *#
#* *#
Log:
LogPrimaryFiles=16
LogSecondaryFiles=2
LogFilePages=65535
LogType=CIRCULAR
LogBufferPages=4096
LogPath=/var/mqm/log/SIXQM/
LogWriteIntegrity=SingleWrite
Service:
Name=AuthorizationService
EntryPoints=13
ServiceComponent:
Service=AuthorizationService
Name=MQSeries.UNIX.auth.service
Module=/usr/mqm/lib64/amqzfu
ComponentDataSize=0
TuningParameters:
DefaultQBufferSize=1048576
DefaultPQBufferSize=1048576
Channels:
MQIBindType=FASTPATH
MaxChannels=1000
MaxActiveChannels=1000 |
Any ideas ? |
|
Back to top |
|
 |
mvic |
Posted: Wed Jan 06, 2010 4:23 pm Post subject: |
|
|
 Jedi
Joined: 09 Mar 2004 Posts: 2080
|
Gideon wrote: |
Any ideas ? |
1. Try using 10 Mb rather than 1.
2. Does that URL I posted help? |
|
Back to top |
|
 |
Gideon |
Posted: Wed Jan 06, 2010 4:50 pm Post subject: |
|
|
Chevalier
Joined: 18 Aug 2009 Posts: 403
|
I just increased the memory alloc to 10 mb.
Dleeted queues, restarted the Qmgr, and re-created them.
It works great, with no DIsk IO
Thanks, very good advise. |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|