Originally Posted by
Mad_guy
* Load balancing inbetween an expanding number of nodes.
* Nodes could be added to the game server on the fly and removed on the fly via administrative functions. It could also move clients off nodes if they were being removed, and new nodes were automatically factored into the load balancing.
* Worked easily across networks and LANs alike, meaning you can have this split up among entire clusters and it all takes care of itself and scales properly (part of the scaling is because each erlang process has it's own heap, and everything is message passing, there is no shared state.) Processes and the erlang system also automatically utilize multicore (so you can sometimes even get linear speedups.)
* Basic fault tolerance (didn't get it fully fleshed out before the code got obliterated,) using the proven OTP libraries.