Re: [exim] 30,000+ email accounts

Página superior
Eliminar este mensaje
Responder a este mensaje
Autor: Graeme Fowler
Fecha:  
A: exim-users
Asunto: Re: [exim] 30,000+ email accounts
Richard Pickett wrote:
<snip>
> Any ideas?

You haven't mentioned the details of your setup, but you'll see an
immediate improvement in response times and reduction in load if you
mount the volume/partition that the mail spools/mailboxes reside on
using the "noatime" option.

You may also get a performance boost if you can store your existing
mailboxes in multiple directories, hashed according to whatever
algorithm you choose. That cuts the number of directories in one place,
so can make directory searches less laggy. Exim can deliver to wherever
you tell it - instead of

/var/spool/mail/$user

You could use

/var/spool/mail/$domain/$local_part

or

/var/spool/mail/${substr{0}{2}{$domain}}/$domain/$local_part

...or, or, or... the possibilities are almost endless *but* they do
depend on the IMAP server you use and its' ability to access those
mailboxes, either programatically via a similar config option or via a
MySQL database. Courier has a number of different lookup methods, which
can be shared with Exim, making the sort of system above all but trivial
to implement.

In order to split mailboxes across multiple machines, use perdition:

http://www.vergenet.net/linux/perdition/

There's an admin overhead in keeping the map of email account to backend
"postbox" server in sync with reality, but if you're managing 30000
accounts then that overhead is tiny compared to dealing with the support
load caused when your system is overloaded :)

Graeme