[Mailman-Developers] Reg mailman to yahoo groups kind of interface

Mark Sapiro msapiro at value.net
Fri Feb 16 03:00:58 CET 2007


mobiledreamers at gmail.com wrote:
>
>I love and use python a lot. And I m trying to make mailman, into a yahoo
>groups kind of interface,
>
>In that I want to find out if any of you guys tried to do this and integrate
>it into another webservice?


I don't know the answer to this.


>Does mailman uses coroutines to send email, because a coroutine based email
>gateway can support much more email messages perday than a thread based one


Mailman doesn't use coroutines per se, although I suppose you could
think of Mailman's qrunner processes as generalized coroutines.
Mailman also doesn't use threads.

Mailman's processing consists of a set of queues and qrunner processes.
Each qrunner process is a single thread.

The basic flow, ignoring everything but posts for the moment, is the
incoming MTA creates a pipe to a wrapper process which invokes the
'post' script to drop the message in the 'in' queue. IncomingRunner
picks up the message from the 'in' queue processes it through a
pipline of handler modules which check for holds, etc., build the
recipient list and queue the message with recipient list in the 'out'
queue. OutgoingRunner picks up the message from the 'out' queue and
engages in an SMTP dialog with the outgoing MTA to send the message to
the recipients. Depending on personalization and VERP options, there
may be one SMTP transaction per recipient, or a few SMTP transactions
with many recipients each. OutgoingRunner processes one message in its
entirety before returning to the 'out' queue for the next message.

Parallelism can be increased by 'slicing' any queue into 2^n slices
based on a message hash and running 2^n runners for that queue, each
processing one slice.

-- 
Mark Sapiro <msapiro at value.net>       The highway is for gamblers,
San Francisco Bay Area, California    better use your sense - B. Dylan



More information about the Mailman-Developers mailing list