[Mailman-Developers] pipe-to-prog/maidir/lmtp performance

Tokio Kikuchi tkikuchi at is.kochi-u.ac.jp
Sun Oct 1 03:36:22 CEST 2006


Hi,

>                                   An smtpd.py based LTMP server could  
> provide an interesting proof of concept though.

I've almost finished writing this primitive LMTP server.

Here is a result of experiment of posting 100 messages to a list and 
measuring arriving/leaving times on my laptop coLinux (Debian) with 
Postfix-2.1.5/Python2.4.  Time recording is based on the message header 
and mail.log, so it is a very rough experiment.

        MTA:In   MTA:Out  MM:Out  sec
program:
  first 08:56:49 08:56:51 08:56:53  4
  last  08:56:54 08:57:27 08:57:38 44
  sec          5       36          49

maildir:
  first 08:48:13 08:48:14 08:48:16  3
  last  08:48:19 08:48:19 08:48:29 10
  sec          6        5          16

lmtp:
  first 09:12:26 09:12:26 09:12:27  1
  last  09:12:31 09:12:32 09:12:41 10
  sec          5        6          15

With the current default method of invoking mailman post program and 
pipelineing takes 49 seconds for the last 100th message to reach the 
list member (a local user), while maildir and lmtp interface reduce this 
time to 15 or 16 seconds.  You can also see most of the difference 
occured in MTA's In and Out, which means execution of mailman post 
program is the most heavy load.  Also, maildir and lmtp passing of 
message from MTA to mailman is a relatively small task than the 
processing the list message like cooking headers and appending footers 
and all like those.

Conclusion: Maildir or LMTP will not likely be a bottleneck.

Cheers,

-- 
Tokio Kikuchi tkikuchi at is.kochi-u.ac.jp
http://weather.is.kochi-u.ac.jp/


More information about the Mailman-Developers mailing list