Might be off topic

Logan Shaw lshaw at emitinc.com
Wed May 10 16:01:48 IST 2006


On Tue, 9 May 2006, Rob Poe wrote:
> Either way it's an interesting discussion.  I'd probably do multiple
> machines running MS / whatever.  I'm not sure if I'd spend the money on
> BIG iron, or go the Google way and do a ton of little inexpensive 1-2u
> rackmounts and do a round robin or load balanced setup.
>
> Have those machines sort of as a perimeter MX, forwarding mail to the
> internal "core".
>
> Hotmail (had) an interesting setup .. where it was a unified LOOKING
> system but partitioned out into "sections" .. I guess that was more
> pre-cluster days, because "parts" of the userbase might go down for
> maintenance.

In my mind, that's the way to do it.  Even if you have accounts
in only one DNS domain that you wish to serve, e-mail is an
example of a task that can be parallelized out the wazoo.

Not only can you split up functions on different machines
(mailbox storage, incoming delivery, outgoing delivery,
filtering, web front end), but you can also split things up
based on account name.  You could have a separate set of servers
for account names beginning with each different letter of the
alphabet.  Of course, you can go further and do a hash function
with 1000 different values and have 1000 different servers,
if you want.  Or store which-account-is-where information in
a distributed database like LDAP.

You can even split up the mailbox storage onto separate
machines: there is no reason a mailbox needs to be globally
accessible as long as the machines that need it know which
machine to contact in order to find the mailbox they need.
Of course, you'd need a method to move mailboxes/accounts from
one machine to another to balance load and to remove/add from
the pool.

   - Logan


More information about the MailScanner mailing list