System parameters on Solaris

For the Dispatcher:
As of Solaris 11, the  parameter in    is likely to need to be increased from its  default of 50 (which may be much too small for the Dispatcher&#x27;s needs  in handing off file descriptors to its worker processes) to some much  larger value -- perhaps 50,000.

The system&#x27;s heap size (datasize) must be enough to accomodate the Dispatcher&#x27;s thread stack usage. For each Dispatcher service compute  &#x2a;,  and then add up the values computed for each  service. The system&#x27;s heap size needs to be at least twice this number.

To display the heap size (i.e., default datasize as reported by   or default data size as reported by   ), use the csh command or the ksh command (see the data result) or the utility
 * 1) limit
 * 1) ulimit -a
 * 1) sysdef

For the Job Controller:
As of MS 6.4, the Job Controller  will set its file descriptor limit to the lesser of 1024 or. Previously, the  value would be used---which on systems with a high such value (in particular, on Solaris 10 where the default is 65535), would mean that the Job Controller -- and jobs it forks---could potentially spend significant time closing a great many unused file descriptors.

If running a version of the MTA prior to MS 6.4, and if the system has a high  configured, it will benefit performance to modify the script that starts the Job Controller to issue an   command setting a smaller file descriptor hard limit (for instance, 1024) before starting the Job Controller.

See also:
 * Job Controller
 * Dispatcher
 * MTA performance tuning