Question on reducing load on MailScanner machine
steve.freegard at fsl.com
Thu Jun 25 20:40:57 IST 2009
Christopher Fisk wrote:
> How do the various child processes of MailScanner know when another child process is scanning a message in the queue? Does the parent process keep track? It seems like this would logically work.
The children are independent of the parent; all it cares about are that
the correct number of children are running.
Each child scans the queue and attempts to lock each message it finds;
if the lock fails, then it moves on until it has either built up a batch
to scan or run out of files.
Jules can correct me if I'm wrong - it's been a while since I read the code.
> Looks like I will have to test it =)
Yep; that's the best part of open-source.
I'd recommend that you avoid SMB for this; NFS is the more likely of the
two to work.
As I'm not a Postfix user - I'm not sure what type of locks it uses; if
it's flock() then it's unlikely to work over NFS; whereas POSIX Fcntl
locks should work over NFS IIRC (thankfully it's been years since I
messed with NFS).
This of course is also ignoring other issues that might creep in; such
as you'll need to make sure that everything between the machines is
identical (e.g. Postfix versions, MailScanner) etc.
More information about the MailScanner