I just had an idea for those people who run a server, but lack the upstream bandwidth to run a large map with a lot of players... What if a group of servers were to run as a cluster, each using the same plugins, but only running a part of the world? When a player moves into an area of another server, they'd automatically connect to that server, and their inventory/health will be transferred with them. When a player uses chat, the message is sent to the main server, then broadcast to every other server, commands would be invoked in every server as well(maybe?). When a new server is added to the cluster, it gets the map seed from the main server, along with the section it should generate. It then copies all the plugins installed, and their configuration settings. This would definitely be a complicated plugin, and there's a few problems with it: Teleportation plugins wouldn't work too well, being that each server only runs a small section of the world Plugins like Iconomy might have problems if the player's account doesn't get updated on all servers Plugins that require two player's input wouldn't work if the players are in different servers What do you all think of this? Would a plugin like this work?
Awesome idea, but this would require some heavy client-side modding. And mostly likely, custom-designed plugins that are made to run in a cluster.
It doesn't seem like it would need a client-side mod, since it mostly does work from server to server, but it would surely break a lot of people's plugins.
When the player walks off Server A onto Server B, Server A would have to tell the client to connect to the other server.
its allready done.. look at the plugin called transporter. it got server to server chat, server to server inventories and so on.. its all done. and spout is required.
There is a proxy program which clients connect to and the proxy automatically manages which server the client is getting data from. However there is currently no solution for doing a cluster for the same world. It is an interesting thought but there are edge cases to consider such as pistons on the border of two servers, tnt explosions, what happens if a node dies, etc.
It could work like those border plugins, where if you reach the border, it'd say 'you can't go any farther' or something. Except before blocking movement, it'll check if a server exists for the section they're entering, and change the server if there is one. You could also have a buffer in between the two server's sections (moving over 1000X in server A will bring you to 1100X in server B), where noone can get to in any server. That would prevent any problems with interacting with blocks on the border. Transporter looks like it changes servers when you go into a portal, this plugin would work whenever you reach a border.
Right, my comment wasn't that it isn't possible but these literal edge cases need to be thought about