Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 10 Dec 2000 12:56:34 +0100
From:      Gabriel Ambuehl <gabriel_ambuehl@buz.ch>
To:        Giorgos Keramidas <keramida@ceid.upatras.gr>
Cc:        Alfred Perlstein <bright@wintelcom.net>
Subject:   Re[2]: Load-Balancing - any solutions?
Message-ID:  <794582592.20001210125634@buz.ch>
In-Reply-To: <20001209171028.A32137@hades.hell.gr>
References:  <105102226954.20001205163641@x-itec.de> <20001205074217.Y8051@fw.wintelcom.net> <5676150678.20001205165002@buz.ch> <20001209171028.A32137@hades.hell.gr>

next in thread | previous in thread | raw e-mail | index | archive | help
Hello Giorgos,
Saturday, December 09, 2000, 4:10:28 PM, you wrote:

>> I'm still looking for something somewhat faster (i.e. no more than a few
>> seconds lag between the master and the slave servers)...
> I really don't know what will happen in web servers that have high
> loads, but what you describe seems to remind me of NFS.

NFSv3 doesn't have server replication, does it? I know that NFSv4 has
got some mechanism to do server replication but AFAIK is this only a
draft without any working implementation so far. I tryed a combination
of NFS and cpdup which turned out to be ok with some hundred MB of
content but over 1Gb it got way too slow so I'm still thinking that
there's a hook into the FS layer is needed in order to get the changes
fast enough (syncing the data wasn't the problem during my tests,
triggering the sync was).

I for myself am still waiting for a nice distributed CVSFS anyway ;-).

> On a side note, having read the thread so far, I like the Squid
> solution for quickly changing, dynamic stuff.  But, even if you have a
> setup like:

>     Internet -->  Squid --+--> Apache (1) --+--> SQL server
>                           |                 |
>                           +--> Apache (2) --+
>                           :                 :
>                           +--> Apache (n) --+

> You are going to have a bottleneck not in the time it takes Apache to
> load and process a page, but on your SQL server.  But if you use more
> than one SQL servers, you are going to need database mirroring too.

Which is still easier to accomplish in realtime than to mirror a whole
filesystem in realtime. Despite the fact, that some RDBMS have got
replication (or something which is called that way but not useable ;-)
out of the box, you can always write some kind of wrapper which will
pass SELECT queries right through while INSERT/UPDATE ones are
distributed among the DB servers (the real problem starts when you
have more updates than a server is able to handle... from that point
only design optimization will help) or integrate it right into the
application code. There are several attempts to implement the
wrapper for MySQL. IIRC was one even integrated into MySQL itself, so
there's no additional IPC required. Not sure about PostGRE, people who
ought to know tell that Oracle replication is a PITA.

> The problem of getting two web servers to respond with the `same' data
> seems to be more complicated than plain `rsync' of two directories :/

rsync itself is dumb simple. But way too slow for big servers (say
50GB HTML+graphics).

> I would be very interested to know what other people have to say on
> this one, though.  Oh, and when this becomes kind of off-topic for
> -questions, perhaps we should take it to -chat.

Hmm. -ISP looks more appriorate to me...

Best regards,
 Gabriel




To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-isp" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?794582592.20001210125634>