On 01/05/2010 09:49 PM, Matt Kettler wrote:
. . .

Really, all spamd does is create a reusable instance of a Mail::SpamAssassin perl object, and keeps it loaded so it can process several messages that spamc feeds this. This is exactly what amavisd-new is already doing internal to its own code, so it doesn't need spamd.

Running "spamassassin" on the command line is really slow, because it creates a new Mail::SpamAssassin object, scans a single message, and exits. This is great for quick checks of the configuration, but not at all efficient in a mailstream. However, amavisd-new does not do this. It creates and re-uses a Mail::SpamAssassin object.

Read the main page of the amvavis website which states:

http://www.ijs.si/software/amavisd/

Which will point out:

"when configured to call /Mail::SpamAssassin/ (this is optional), it orders SA to pre-load its config files and to precompile the patterns, so performance is at least as good as with spamc/spamd setup. All Perl modules are pre-loaded by a parent process at startup time, so forked children need not re-compile the code, and can hopefully share some memory for compiled code;"

How/where is this turned on in amavisd-new-2.6.4?

I'd be happy to get rid of useless instances of spamd

Terry




Reply via email to