Troubleshooting
Problem
Cause
Resolving The Problem
The IBM MQ documentation explains how to tune your system to run IBM MQ:
- Configuring and tuning the operating system on AIX
- Configuring and tuning the operating system on Linux
- Configuring and tuning the operating system on Solaris (IBM MQ 9.1 and older)
- Configuring and tuning the operating system on HP-UX (IBM MQ 9.0 and older)
IBM MQ provides the mqconfig command to compare your system configuration against the IBM-recommended default limits, which should be sufficient for most systems. If your system processes very high volumes of data in production, or if it hosts other resource-intensive products such as databases and application servers, then you may need to increase your settings beyond the default limits. Run the mqconfig script when your system is processing its peak volume to ensure the actual resource usage, shown as a percentage of the total configured, is not close to running out.
Any values listed in the "Current User Limits" section are resource limits for the user who ran mqconfig. If you normally start your queue managers as the mqm user, then you should switch to mqm and run mqconfig there. If other members of the mqm group (and perhaps root) also start queue managers, they should all run mqconfig to ensure their limits are suitable for MQ.
IPC Tuning Parameters
The following parameters control the limits on System V IPC semaphore and shared memory resources used by MQ. Not all parameters exist on every system; AIX notably does not use any of them. Parameters relating to System V IPC message queues are not listed because MQ does not use them.
If you are installing MQ on a system with other products that recommend specific IPC settings, you will need to know how to combine the recommendations. For example, if MQ recommends 1024, DB2 recommends 512, and TXSeries recommends 512, you need to know whether to use the highest value (1024) or the sum of all the values (2048). In the list below, you should take the highest value for parameters marked > and add the values for parameters marked ∑
System V IPC Semaphore Parameters
- > semaem
The maximum adjustment value the operating system can apply when processing an undo request. MQ uses binary rather than counting semaphores, so this parameter does not affect it. - ∑ semmni or project.max-sem-ids
The maximum number of semaphore sets on the system. Current versions of IBM MQ use significantly fewer semaphores than WebSphere MQ 7.1 and older versions did. - ∑ semmns
The total number of semaphores in the system. The theoretical maximum is semmni × semmsl, though in practice some sets will be smaller than the maximum allowed size. - ∑ semmnu
The maximum number of semaphore undo requests in the system. When a program ends or crashes, the operating system will automatically adjust semaphores for which undo support was requested. MQ uses this option with some semaphores to ensure they are unlocked even if a process ends abnormally. - > semmsl or process.max-sem-nsems
The maximum number of semaphores in a single set. - ∑ semume
The maximum number of semaphore undo requests a single process can have outstanding. - > semvmx
The maximum value of a semaphore. MQ uses binary rather than counting semaphores, so this parameter does not affect it.
System V IPC Shared Memory Parameters
- ∑ shmall
The maximum number of pages available for shared memory on Linux systems. - > shmmax or project.max-shm-memory
The maximum size of a shared memory set. Setting a very large value will not waste memory since MQ starts by allocating small sets, increasing the size only when processing a heavy workload. - ∑ shmmni or project.max-shm-ids
The maximum number of shared memory sets on the system. MQ queue managers add shared memory sets based on workload, so it is worth checking this parameter when the system is under load to see how many sets you are using. - ∑ shmseg
The maximum number of shared memory sets a single process can attach. This value should match shmmni so that MQ can attach all of the sets it creates.
Product Synonym
IBM MQ
Was this topic helpful?
Document Information
Modified date:
21 February 2024
UID
swg21271236