On Thu, Mar 01, 2001 at 04:56:43PM +1100, Brett Randall wrote:
> > Well, my users are all in one domain, so I cannot split the domains
> > across several HDD's.
> 
> RAID???

RAID + Fibre Channel.

> > Secondly, what if 2 1/2 million users
> > simultaneously hit the server, would the server handle it?
> 
> What with? A baseball bat? Unlikely. Logging in? Perhaps. Calculate
> how many MBs each instance of your web server take up, multiply it
> by 2.5million, and tell me that your server can handle both that
> amount of RAM and that number of processes. Uh huh.

Yeah.. no way that you can get that kind of traffic to one server.  Not
going to happen.

> > Well, how does hotmail or yahoo do it? I am sure they load blanace
> > across multiple servers, but how?
> 
> If you're looking at a *nix solution, look into Coda filesystems,
> Intermezzo, GFS, etc. Then look at a network-based clustering
> solution, such as the Linux Virtual Server.

There are several common solutions for this sort of problem (although I have
never seen it on this scale, really)..

1. Use something like Qmail-LDAP, which has a "mailHost" feature.  This lets
   you have users distributed across multiple servers, and the qmail boxes
   are smart enough to forward the message to the proper server via QMTP.
   POP3 can get forwarded to the appropriate host as well.

2. Use something like a series of Network Appliance NAS devices to store
   users mail; then you can have each server access the entire data store
   regardless of where the connection is (via NFS).  

3. Use something like GFS, which is a shared filesystem used on Fibre Channel
   Arrays.  This has great potential, as the bandwidth of FC and the overhead
   of SCIS is much lower than an NFS based solution.  However, there are other
   limitations here; GFS hasn't really ever been tested on a scale like that, 
   to my knowledge.  Not to mention the number of machines and arrays you
   would need to have.

#1 is the simplest method, but it also has the most administrative overhead
and the least amount of redundancy.  Loose server32, and all the users on
server32 loose thier mail.  

#2 works really well if you design the networks properly; but at the volume
your talking about, you'll probably really wind up with a hybrid of #1 and 
#2... a small cluster of machines attached to a Netapp for small groups of
users.

#3 is the holy grail; of course, I've never seen anybody actually deploy
it, since GFS is such a new thing. :)

> > I know all about load balancing with dns, etc. across multiple web
> > servers for example, but with mail, a specific user has to login to
> > the same box that hosts his mailbox everytime, and mail arriving from
> > outside world to this user has to arrive to the same box also.
> 
> You're thinking inside the box.

Yeah, he is.  Stop thinking about each machine as the source; start
thinking of the entire infrastructure as one machine.  Check out
http://www.infrastructures.org for more information on how to get your
head around building things like this.

> > If anyone out there has gone through something like this, I would
> > appreciate it a lot if you hint me with a clue :) P.S. Please cc me
> > your reply, as I am not subscribed to the list. Best Regards,
> 
> You might want to subscribe. Just a hint.

Definetly subscribe.

Check out Qmail-LDAP, too.  You won't be sorry.

Adam

--
[EMAIL PROTECTED] - (http://sysadminsith.org)
Evil Lord of the Sysadmin Sith Darth Rmdashrf

Reply via email to