How to avoid performance issues related to mass email delivery in Lotus Domino

From TN 1271709

Do not send mass mail from a production mail server.
Avoid sending mass email. If mass email must be sent, do not send those mass mail messages from a production mail server but an administration server or another dedicated Domino server which is not directly servicing end users.  Distributing this workload will prevent end users from experiencing performance issues related to address expansion during phase one of the message delivery process.

This dedicated Domino server should be configured to hold messages for transfer outside of peak system usage.

Reduce the number of threads for transfer and delivery in the Domino router
If you must sent mass mailings, reducing the number of transfer and delivery threads will decrease the CPU and memory requirements.  
**Note:** This modification may increase the time required for message delivery.

Limit message dispatch,
The Domino router can configured to dispatch smaller numbers of messages (not recipients) for delivery in the mail.box, thus reducing the peak CPU and memory usage for the Domino router server task.  Doing so, however, may increase delivery time.  

To configure, utilize the setting: MailDispatchThreshold=xxx .  (Where xxx is the number of concurrent messages to dispatch; the recommended setting is 100.)


Limit mass mailing
To configure, utilize the following setting: RouterMaxEffectiveSize=xxx (where xxx is in kilobytes.)

When enabled, this restriction will cause the router to present the Non-Delivery Failure (NDF) message when the number of recipients multiplied by the message size (in k bytes) is greater than the value specified by the notes.ini setting.  Attachments are excluded.  The value of the RouterMaxEffectiveSize=setting is set in KB.  

Implement the following notes.ini setting: RouterMaxEffectiveSizeIncAttach=1.
With this setting enabled, any file attachments are included in the equation to calculate the size of the message.


Increase the capacity of your system to support mass mailing.
Most production Domino mail environments are sized based on the usual end user workloads, Mass mailing, however,  is not part of that normal workload.  Therefore if mass mailing is part of your business requirements, increase the CPU and memory available to the specific Domino servers that are expected to support this additional workload.  

For example, if you wish to configure the Domino router with 25 transfer threads and 25 delivery threads, and the largest expected mass mail item will be 10 MB, sent to 1000 users:
Router will require an additional 500 MB of memory to support this particular mass mailing.


To determine the additional CPU required:
By default, the Lotus Domino server can only support 20 concurrent user requests which are available service threads in the pool.  Router can service 2.5 times the load of the server task.  Therefore,  increasing the system requirements by the same is the recommendation. This calculation is based on the 50 threads router will spawn to process mail, 25 delivery threads and 25 transfer threads.  Added together, these 50 router threads is 250% of the 20 threads available by default for end user sessions in Lotus Domino.  In this way. the mail router in Lotus Domino is capable for consuming significantly more system resources than normal when processing large mass email mailings.

For example: an Intel 4 way system driving 80% CPU, 30% on the nserver task would mean that the router is expected to require 3 additional processors to support the load.  If 20 work threads in the server can consume 30% of 4 CPUs (or 1.2 CPUs), then with 50 threads under full load, the Domino router could be expected to consume 3 CPUs, which is 1.2 times 2.5.   In order to make this system strong enough to handle the additional workload of mass mailings, you should add 3 CPUs.  


Limiting factors with regards to server memory:
Domino is a  31-bit, 32-bit or 64-bit application depending on the platform, Total server memory is limited by platform from (1.2 gigabytes to over 4 gigabytes),   If the memory requirements of mass mailing combined with the memory requirements of users exceeds the supported memory of your platform, server hangs or crashes may result.