[Pymilter] really long processing
Eric S. Johansson
esj at harvee.org
Tue May 11 09:10:50 EDT 2004
FYI, I have the receiver side milter working reasonably well. And I
will be sending you the code as it as I'm convinced it is not
embarrassingly ugly.
I am moving to the stand generation side and I have two options as far
as I can tell, first is to replicate the milter. in some way, shape, or
form for the stamping filter. I'm coming to the opinion that it may be
the preferable form. The alternative is to switch to the filter or
stamper inside of the milter.
One of the main challenges is queuing. When I am generating a stamp, it
takes approximately 15 to 40 seconds depending on CPU load and stamp
size. While there is no problem with generating stamps in parallel,
there is no advantage and in fact there are some significant
disadvantages. Specifically that will delay the delivery of all mail
significantly instead of delivering messages one at a time.
Additionally, it's effectively using the process table as a queuing
structure which is never a good thing.
The filter structure is:
If the other party is known, send the message through
if the other party is unknown, generate a stamp
real complicated.
step generation is handled by calling a command. This allows me to
easily remain compatible with the hashcash project without the overhead
of calling a library that doesn't exist...
How will the milter behave if there are multiple requests for its
services at the same time as it is waiting for a sub process to finish?
that also raises the question. Is pymilter single threaded? It
shouldn't be a problem because I do use file locking to control access
to various important files but I'm wondering if that is sufficient in
the milter environment
that also raises the question. Is pymilter single threaded? It
shouldn't be a problem because I do use file locking to control access
to various important files but I'm wondering if that is sufficient in
the milter environment
---eric
<!DSPAM:FC7533C3B5233802357800611>
More information about the Pymilter
mailing list