[vworld-tech] Modern MUD server design

Patrick Dughi dughi at austin.rr.com
Thu Jan 22 14:40:06 PST 2004


> > The 'trick' is simply to run multiple replicated databases, all on
> > RAID disks, and usually use a hardware solution to provide for
> > transparent failover.
> 
> Any good papers on how to set this up?  I'm fine without transparent
> failover, I'm mostly concerned about data loss.  Mirrored hard drives
> with a replicated database might be enough to keep things going
> though.

	I'm afraid the only solutions I know of were rather proprietary,
and relied on just as proprietary hardware.  I've very familiar with
HP's version, working in conjuction with Oracle databases, but Sun also
offers a similar package.

	Of course, these are not do-it-yourself packages, they often
include kernel modules and involve specific hardware configurations.
Not something you could - for example - just put on your home PC.

	I think both Oracle and Sybase also offer a distributed database
system with failover capacity, though it's generally regarded as
inferior to the OS-level failover solutions.

	Last, you may also want to consider using a load balancer in
front of a set of databases, and manage your active data in persistent
objects on an application server in the middle tier.  The databases
would take care of replicating their data in a leisurely manner to the
rest, and the load balancing router would (in theory) make sure to pick
an active database.

	Many many e-commerce apps work like this, depending heavily on
the middle tier software as a large cache, and only using the
database(s) to shunt old data from the middle ground to longer term
storage.

	You'll see this pattern quite often with J2EE apps, using EJBs
as the middle ground.  Some random car insurance company uses this
method, since they found out that most people take more than one
separate trip to fill out the set of online forms for filing a claim
(didn't realize they needed item _x_ or _y_ had to go find it).  Instead
of storing partially completed forms which may conflict with the DB
schema, they store it all in intermediate objects, and then have a
middle-tier level dequeueing mechanism that slowly but surely pushes
completed forms in, so as not to slow down incoming connections.

	Sorry if I can't help more - if you do find any good technical
papers that explain which system stats, hardware and software, as well
as specific network topology and the sort, please share.  I'm keenly
interested in how some of the big boys work behind the scenes.

	PjD



More information about the vworld-tech mailing list