Re: The fundamentals of MHonArc...

2000-07-12 23:28:46
On July 12, 2000 at 23:04, Gerry Hickman wrote:

Unfortunately, I think this would mean ditching the archiving system
within Mercury/32 and instead using mail filter rules to pipe individual
messages to a folder structure, as described by Earl.

This still leaves the problem of how to add the new messages in a
efficient manner. I'm sure MHonArc would quite happily determine which
messages are "new", but I imagine quite a degree of processing would be
needed to do that.

Not really.  In the example/solution I provided, the control script
that invokes MHonArc does file timestamp checks to see which mailbox
files to pass to MHonArc.  So for a given list, only the current
month will be processed if the file has been changed recently.
I have a threshold time value to control how recently a mailbox was
changed to be processed by MHonArc.  This way MHonArc does not have
to read alot of data where most of it will be skipped anyway.

What's really needed is a system that is "event driven", so that a new
message arrival would invoke MHonArc and tell it to only add this
specific message. Whether this is possible under NT I don't know. Any
ideas welcome.

Install Linux :-)

Seriously, Unix-based systems are more suited for these types of
automated tasks.  If it is a potential option, consider it.  With
sendmail, or qmail, it is straight-forward to have mail archived
as they arrive.

With that said, I do not favor the "event driven" approach.  The
problem is does not scale well (at least with MHonArc).  If you have
high mail volume, you can get alot of MHonArc processes running, many
blocked because an archive is locked, with the possibility of processes
timing out because a lock could not be attained.  A side-effect is that
system will take a heavier load with all the processes running.

The cron-like approach provides better control.  If traffic is light,
just have the mail processed more frequently, giving a illusion of
real-time updates.  As traffic increases, increase the time between
processing to allow each process time to do their work.  NT has
the Task Scheduler to do periodic jobs, but it is not as granular
as cron.  It may suffice for your needs.


<Prev in Thread] Current Thread [Next in Thread>