On Mon, 1 Nov 2010, Russ Sanders wrote:
I have an Ubuntu Linux server running SpamAssassin Server version 3.2.4 running
on Perl 5.8.8 with zlib support (Compress::Zlib 2.008). I have at least one
account that is having to process from 250 - 400 emails, 99% spam, per HOUR.
This works out to be approximately 8,000 emails per day. The spamassassin just
can't keep up and it is backing the Queue upto 2500 messages. I have made an
adjustment so that the one user can have multiple spamd children running for it,
but it doesn't seem to take on more that 2 spamd children.
I have also recorded that scanning a single message appears to take
approximately 15 seconds. I have adjusted the timeout to 5 seconds, but it
still appears to be taking 12 - 20 second per message. This works out to 4 per
minute, or 240 per hour. So, of course, it can't keep up if it has 450 per hour
coming at it.
You keep mentioning SA throughput statistics, but you do not mention at
all how your server fares load-wise. If your CPU(s) is(are) at 100% or
your system is swapping a lot then simply raising the number of SA
processes will not really help.
The system is a basic Linode running Ubuntu Linux 8.04 with 512M of memory.
As already proposed, I'd definitely try to raise the system memory.
What is your hardware setup? How does the load on this system look like?
Does it have any other load apart from mail/SA? What about your network
connection? A saturated Internet connection would also slow down blacklist
queries a lot. Any other obvious bottlenecks, such as disk I/O to your
mboxes ?
Some details about your SA setup would also help. How is it attached to
your mail system? Any non-default settings? Are you using Amavis? Any 3rd
party/custom rulesets? What do your messages look like? If you are having
SA scan a lot of 30MB messages you would definitely notice some
performance issues. Are you using sa-compile to produce native code for
the ruleset?
As mentioned by other people you should also check your DNS system. Some
braindead routers and ISPs impose a hard limit on DNS queries. Some BLs
also limit the number of hits/hour for each IP unless you purchase a
commercial service plan from them. Are you using a caching DNS server, as
in http://wiki.apache.org/spamassassin/CachingNameserver? If you are not
then the DNS queries themselves could slow processing down to a halt.
I would like to adjust appropriately
Number of Max Children
Number of Spare Children
Number of spamd services per account (upto max children if possible)
TimeOut on Scanning of the eMail
Suggestions will be appreciated.
Thank You
Russ
Regards,
Theodoros Kalamatianos