> > >> Can someone explain to me what exactly makes ezmlm fast? I
> > >One word: qmail.
> >
> > Another word: cdb.
> >
> > MLM performance consists of two components: updating list databases,
> > and sending message to subscribers. With ezmlm, the sending part is
> > entirely the responsibility of the MTA (qmail). Maintaining the
> > databases is ezmlm's job. Because ezmlm uses an indexed database
> > format (cdb) it's able to do lookups much faster.
>
> ezmlm doesn't use cdb.
>
> It uses a directory-based hashing which is indeed much better than a
> flat list like majordomo uses, so you do have a bit of a point.
Furthermore, each of these files are pre-formatted so that they can be fed
directly into qmail-queue without further manipulation. From memory, they are
null terminated strings of recipients.
The final point is the extensions to the submission process that qmail-send
supports such that a single queue injection with multiple recipients can use
VERP because the VERP generation is done by qmail-send. (It's hard finding
this info, but it is documented in the addresses man page).
So there are many components coming into play here that affect the performance
of ezmlm. Which part of 'fast' were you asking about exactly?
The main weakness I see with ezmlm is on large lists because the bounce
handling uses a flat directory structure which eventually runs into OS
performance issues on many forms of Unix. By large I mean 250,000+
Regards.