[MUD-Dev] Distributed State Systems

Bruce Mitchener bruce at cubik.org
Sun Sep 5 02:33:04 CEST 2004


Michael Tindal wrote:

> I've been working on developing a distributed system meant to
> ensure that connections are not lost despite programmatic errors
> in system design (e.g. segmentation faults or the like).  The goal
> is that there is a central driver that distributes connections
> among various nodes, with every node having at most half of its
> maximum connection capacity, so in the event one node fails it can
> simply transfer its connections temporarily to a running node
> until a new node is created to handle the connections.  That part
> is relatively complete and I understand the implications and how
> to actually do it.  What I'm stuck on is how to ensure a
> consistent world-state among the various worlds.  As the MUD I am
> designing is a mixed PK/RP system, any system latency is a bad
> thing.  I think I could have the system tolerate a latency up to
> 1sec, but any more than that would create server-splits and cause
> an inconsistency in how the world is relayed to players or how
> players communicate with each other.

Perhaps you're looking at the wrong problem entirely.

Why not just not crash?

That's a far nicer solution to your problem and is pretty feasible.

You can design your system that it runs on a stable kernel that
never changes and so that the code running above it won't trigger a
segfault.

How is that you might ask?

Use something like Common Lisp (fast, compiles to native code),
Smalltalk, Java, or other existing things.

We've done some games in Cold and they tend to not crash given that
the kernel is very well tested and polished after having been in
heavy use for well over 8 years.

  - Bruce
_______________________________________________
MUD-Dev mailing list
MUD-Dev at kanga.nu
https://www.kanga.nu/lists/listinfo/mud-dev



More information about the mud-dev-archive mailing list