On Thu, 14 Dec 2000 23:00:02 -0800 J C Lawrence email@example.com wrote:
What's this host-specific stuff? More later.
Oops, I forgot to paste a particular bit from my notes:
The basic pattern of execution:
Messages arrive from the MTA and are put in files in ~/inbound with the name of the file matching both the list address it was send to and what needs to be done to it (bounce processing, list post, etc).
A cron job runs and reads ~/config.<hostname>, and on the basis of the contents of that file, forks up to three child processes and then silently dies:
i) Process inbound messages ii) Process messages in ~/lists/<listname>/pending iii) Process messages in ~/outbound
The ~/config.hostname file indicates which if any or all of the above three children should be forked, and further, can specify both which groups or individual lists to process for all three. It is this which allows functionality to be distributed across hosts with individual hosts assuming specific named loads.
Note: Its actually more than three children as that doesn't (yet) account for command and bounce processing (which I've put into seperate queues), but it gives you the general idea.