>>>>> "Ralph" == Ralph Seichter <ra...@ml.seichter.de> writes:

Ralph> * Wietse Venema:
>> What problem are you trying to solve?

Ralph> Milters A, B and C in my example scenario can trigger
Ralph> asynchronous actions in backend systems, the results of which
Ralph> become available only after a delay caused by processing, which
Ralph> takes about 3 minutes. These results are required by milter D,
Ralph> and it is not feasible to have Postfix hold the original
Ralph> sender's session in an active state for this amount of time.

So what happens if you get 1,000 emails coming into your system?  This
smells like a Denial of Service problem for you and your incoming
email.  That 3 minutes is a *long* time to wait for a reply on your
milters.

Ralph> My idea is to hold the affected messages in a FIFO-queue-like
Ralph> component for a configurable amount of time, long enough to
Ralph> ensure that the backend processing has finished when milter D
Ralph> is called. Other than inducing a delay, the transport queue can
Ralph> be "dumb". That whay, I see no need for any form of
Ralph> synchronisation between Postfix and the third-party backend
Ralph> processes.

So basically you want to accept all emails, feed them through a chain
of milters which take forever to process, and then deliver or not?

Are you're milters filtering out attachements?  Or looking inside
attachments for spam and/or viruses?

Can you go up a level and talk about the problem you're trying to
solve, not HOW you're trying to solve it.  What email threat are you
looking to solve?

John

Reply via email to