Optimizing the PoliteMail Server

As a benchmark, in our standard local network configuration of PoliteMail Server, Exchange Server and SQL Server, sending to a list of 10,000 takes about 5 seconds to process and sending to initiate.

If you’re configuration processes more slowly, it may impact the user (Outlook will be non-responsive) and the email delivery may take too long.

There are some simple configuration options to consider to improve performance and speed things up. For lists over 50,000 a multi-server load-balanced approach is recommended, and these same optimizations will apply.

1. Ensure the PoliteMail Server machine has 4GB of RAM, and a multi-core processor (dual or quad).

2. Check the message size. If you are sending regular file attachments, or have embedded (pasted) images into your email message, the message size could be 1MB or larger, which would seriously impact sending performance. When using PoliteMail > Add Graphic Image to place images referenced from the PoliteMail Server and/or using the PoliteMail > Smart Attachment feature, a newsletter with 7 2-3 paragraph articles and 7 referenced images would only be a file size of 54KB.

3. Ping-test the network latency of your SQL Server. The PoliteMail SQL connection should be optimizes for high-volume transactions. If you are connecting to a non-local SQL Cluster, you could experience latency in the eighth or a quarter-second range. PoliteMail performs 3 SQL transactions per individual email sent, so in this environment, that 10,000 list would require 30,000 SQL transactions, which could take an hour to process with that latency. If you cluster is not designed to support high-transactions, we recommended a dedicated SQL Server Web edition installation, which may be set-up on the same VM (add 4GB more RAM) or a separate VM on the same local network.

3. Separate the application pools for PoliteMail and SSV3 applications. This effectively separates the incoming from the outgoing processing performed by PoliteMail into separate processes. Note the separating these onto entirely difference machines or instances is also possible, but may require additional licensing.

4. Implement Web Gardens within IIS and increase the MaxThread on Applications. Multi-threading and tweaking the web server for high-volume performance will increase processing speed during the send process.

5. Set IIS to cache static content, which will improve client-side responsiveness

6. Set-up a SQL Server job to rebuild the indexes for both the PoliteMail and RE databases

You may discuss these options and inquire about configuration assistance with your PoliteMail Server Administration/Technician.