381

MDaemon's Spam Filter processes messages slowly due to "DNS Available" configuration

MDaemon's spam filter is processing messages really slowly.

The Is DNS Service available? option allows you to choose whether or not DNS is available to the Spam Filter when processing messages. Try setting this option to No (under Security | Spam Filter | Spam Filtering tab).  Click Apply and OK.  

If the problem goes away or it seems to be processing messages more quickly, there is probably an issue with the DNS server you are using.  If you have a name server in your LAN, it could be forwarding for recursion which would contribute to the slowness.  If you're using your ISP's name server for recursion, then you should change it to an internal server.

Best performance can be achieved with a local caching name server on the same box as MDaemon.

More information on DNS Available:
Yes: DNS is available. Certain heuristic and other rules that require DNS connectivity will therefore be utilized.
No: DNS is not available. Spam filtering rules that require DNS will not be utilized.
Test: DNS availability will be tested and if present will be used. This is the default setting.

Basically, turning this off allows the messages to process 4 times faster. Average 0.5 seconds when off vs. 2.0 seconds (but up to 15 depending on your rules) when on. The drawback is that it typically doubles the amount of missed spam, but depending again on your rules and your spam threshold, this can be overcome. 
 
Please follow the link for more specific information about the performance of network tests. 

http://wiki.apache.org/spamassassin/UsingNetworkTests

 

Additional Comments

Thanks to Alex Broens for his assistance with this topic.