Summary: Centralized or Distributed systems better for web hosts?

From: Jianguo Sun (sun1@marque.mscs.mu.edu)
Date: Mon Nov 04 1996 - 20:29:52 CST


I got pretty many answers for my question. My original question was:
>I am evaluating web server systems. From the performance view of point,
>Should I choose a single powerful centralized system e.g. Sun Ultra II
>with two 200MHz CPUs and host 5 web servers, or choose 5 small workstations or
>PCs(e.g. 200MHz cpu, 64MRAM) running Linux to host 5 web servers indivadually?

>From Dan Baritchi <dan.baritchi@mci.com>
You might call Sun and ask some questions about their fully redundant
ultra enterprise 3000 and 4000 series (hot swappable system boards,
disks, power supplies, etc). These are some pretty amazing machines...
using the new ultra architecture.

>From raju@hoho.ecologic.net

Here are somethings to consider:

1) Are your website going to be I/O bound or CPU bound? Are you serving
    up mostly static pages or are you doing something fancy like having
    a RDBMS backend etc?

    If each of your websites is CPU intensive, it might be better to
    isolate them on different machines, so that you can selectively
    upgrade machines as needed. But just remember, with am Intel
    architecture, there is an upper bound to how much CPU you can
    get, you are at the mercy of Intel to make faster chips if you
    max out your machines. However, going with something like a
    SPARC, you can get virtually limitless resources. If you're
    I/O bound (static pages), with one machine, you might consider
    buying several SCSI buses to isolate the traffic, with multiple
    machines the problem becomes trivial.

2) Are you concerned with building a fault tolerent system?

    To put it simply, with machine, you're setting yourself up for a
    potential disaster. You can have reduntant CPU, disks etc. but,
    you can never be fully protected without multiple machines. With
    multiple machines, you still need to make sure that build a
    good system, just having other machines does not do any good, you
    have to come up with a plan to make sure one machine pick up the
    load in case another machine goes down.

3) What are your cost issue (time and money)?

Having one extensible machine is a lot more cost effective then
    having multiple machines in the long run. What I've found is that
    having one good machine, you tend to spend money in big chunk, but
    not nearly as often as with having a farm of 'lesser' boxes. So
    if you have some budgetary constraints that prevent you from spending
    big chunks of money ... Adminstering a single machine is lot easier,
    upgrading a server farm is a nightmare, day to day admin can be very
    tideous, unless you spend a good amount of time setting up systems to
    allow you to automate administration. The only thing about administering
    one machine is that you have to be very carefull because, changing on
    thing, could potentially effect several of your websites.

Finally, the approach that we have been taking is a combination of the two
philosophies. We are buying cheaper Ultra in pairs, using one to host
several sites and the other as a mirror. I'm currently setting up a system
that willl use both machines equally depending on load, but this creates
syncronization problems especially when you have a dynamic website.

>From <kent@syd.dimension.se>
This is what I would do (and we're talking VERY high loads here!
Hundreds of hits/second):

Ultra ENTERPRISE 2 with 2x200MHz CPU's is an excellent system, RAM
depends on what web-server you'll choose (we'll get to that later on).

Make sure you spread the data and logs on to multiple disks, perhaps
even striped disks. I can see a system like this: 2x2.1GB disks striped
for system, swap and logs and 2x2.1GB striped for web-data. Make sure
you get Fast & Wide disks and controllers! (I think this is standard in
the E2.)

Choose a good webserver! For Solaris, your alternatives (as I see it)
are:
1) Spinner (http://spinner.infovav.se/)
2) Phttpd (http://www.signum.se/phttpd/ (I think))
3) Netscape Enterprise

Spinner will use only one process, using no more than perhaps 10MB's of
RAM, at a max. It is written more or less for Solaris, so it'll
multithread like h*ll, running at speeds you won't believe are true. (I
have run tests on this piece of software, and on a Ultra 170 I ran out
of filedescriptors and stuff like that way before I ran out of
software.) This is a very good server, giving you maximum pleasure of
your RAM, lots of disk-cache. Go for 128-256MB's of RAM.

Phttpd is quite a simple and spartic server, but it'll run at blazing
speeds using little memory. Written for Solaris, can't be ran on any out
OS.

Netscape Enterprise is what you'll have to go with if you don't feel
like trying the more anonymous products. Enterprise is the best product
Netscape has released sofar, and it'll do a good job, but consume a lot
of RAM. You should probably go for 256-320MB.

Optimizing the web-server is something that will give you a lot of
performance as well. Simple tasks like fiddling with TCP-parameters,
turning of DNS lookups in the logs will give you more MB/s and more
hits/second!

>From Stephen Harris <sweh@mpn.com>
On the raw CPU performance side - pass! Dunno. However, note that IO
throughput (eg disk IO) can become a bottleneck on really busy servers.
By having 5 smaller machines, you have increased your IO bandwidth by
a lot...

>From "Duane R. Larkin" <duane@cris.com>
I would go with the bigger systems. Two main reasons:
        1) You can get more RAM into the Ultra's. This gives better
        performance. The Ultra's also have ultra-wide SCSI - much faster
        than SCSI-2.
        2) You can get far more connections on an Utlra. With 5 small
        machines you could have one that is just max'd out on connections,
        but another that has very few connections. There is no way to
        fix that, or no easy way. With the Ultra's, if one of your sites
        has a low connect rate - the other sites can use the "left over"
        system resources.

The down side is that if an Ultra hangs/crashes it takes alot more with
it :(

>From Mike (Mehran) Salehi mrs@cadem.mc.xerox.com (716) 422-2725
        I recommend the smaller systems. Usually these boxes are I/O bound and
I think you do much better with a distributed system, but it may have other hassels such as managing it.

***********************************
Again, thanks for all your helps.
Jian

-- 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*                              Jian Guo SUN                                    *
*             Dept of Math, Statics and Computer Science                      *
*                         Marquette University                                * 
*                          Milwaukee, Wisconsin                               *
*                        Home Phone: (414)277-5094                            *
*                      Email: sun1@mscs.mu.edu                                *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 



This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:11:14 CDT