WARNING: Processing more concurrent emails require more RAM.
Amavisd-new is content filter, it invokes SpamAssassin and ClamAV for spam/virus scanning, it also offers additional features like DKIM signing and verification.
In Amavisd config file, $max_servers
sets
the number of concurrent Amavisd processes and it must match the number set
in /etc/postfix/master.cf
maxproc
column for the smtp-amavis
service.
Sample settings:
# File: /etc/amavisd/amavisd.conf
$max_servers = 4;
# File: /etc/postfix/master.cf
smtp-amavis unix - - - - 4 smtp
...
Both values should be identical for two reasons: If Amavisd offers more processes than Postfix will ever use, Amavisd wastes resources. On the other hand, if Postfix starts more dedicated transports than amavisd can handle simultaneously, e-mail transport will be refused and logged as error.
If many emails stalled in mail queue (check with command postqueue -p
), and
your server has powerful CPU and memory, you can increase the number of
concurrent Amavisd processes, so that it can process more emails at the same
time. Sample setting:
# File: /etc/amavisd/amavisd.conf
$max_servers = 10;
Restarting Amavisd service is required.
# File: /etc/postfix/master.cf
smtp-amavis unix - - - - 10 smtp
...
Note: If you don't want to modify /etc/postfix/master.cf
, it's ok to set
smtp-amavis_destination_concurrency_limit = 10
in /etc/postfix/main.cf
instead.
Restarting Postfix service is required if you modified /etc/postfix/master.cf
,
reloading OR restarting is required if you modified /etc/postfix/main.cf
.
References:
All documents are available in BitBucket repository, and published under Creative Commons license. You can download the latest version for offline reading. If you found something wrong, please do contact us to fix it.