WebSphere® MQ uses semaphores, shared memory,
and file descriptors, and it is probable that the default kernel configuration
is not adequate.
Before installation, review the machine's configuration. To do this type
the following commands as root:
modload -p sys/msgsys
modload -p sys/shmsys
modload -p sys/semsys
sysdef -p
Compare the output with the values below.
Figure 1. Setting kernel parameter values on a Solaris
systemValues for Solaris 9
set shmsys:shminfo_shmmax=4294967295
set semsys:seminfo_semmni=1024
set semsys:seminfo_semaem=16384
set semsys:seminfo_semvmx=32767
set semsys:seminfo_semmns=16384
set semsys:seminfo_semmsl=100
set semsys:seminfo_semopm=100
set semsys:seminfo_semmnu=16384
set semsys:seminfo_semume=256
set msgsys:msginfo_msgmni=50
set msgsys:msginfo_msgmax=4096
set msgsys:msginfo_msgmnb=65535
Values for Solaris 8
set shmsys:shminfo_shmseg=1024
set semsys:seminfo_semmap=1026
set msgsys:msginfo_msgmap=1026
To change the values, add a
set parameter=value lines
to the
/etc/system file as shown above and reboot the system.
For further information on setting up the system, see the
Solaris Tunable
Parameters Reference Manual for your release of Solaris.
Note: - These values are suitable for running WebSphere MQ,
other products on the system may require higher values.
- Do not change the value of shmmin from the system default
value.
- Semaphore and swap usage does not vary significantly with message rate
or persistence.
- WebSphere MQ
queue managers are generally independent of each other. Therefore system
kernel parameters, for example shmmni, semmni, semmns,
and semmnu need to allow for the number of queue managers
in the system.
- You need to set the kernel parameters set msgsys:msginfo_msgmap, msgsys:msginfo_msgmax and set
msgsys:msginfo_msgmnb only if you are using linear logging. You also
need to set set msgsys:msginfo_msgtql to the maximum number
of log files that may be used on the system, this is the number of primary
and secondary logs added together for all queue managers.
System Resource Limits
Set the system resource limit
for data segment and stack segment to unlimited using the following commands
in a command prompt:
unlimit -d unlimited
unlimit -s unlimited