Jump to content
  • Advertisement
Sign in to follow this  

Single shard MMO continued

Recommended Posts


Continued from here....


Turns out I could actually get the $50k and built my own cluster across multiple machines with a total of 128 cores.

The development has continued since and I have to say the results are fairly pleasing.

The scaling was fairly successful and it will probably distribute out quite well.

My approach was very similar to sharded databases, and although I rolled my own I suspect I could have used something off the shelf I would know it in enough detail.


e.g. MongoDB. I would do something like have shards that hold limited information of a geographical area (e.g. positions of player). Only certain regions would be replicated (e.g. neighbouring regions). A simulation client that runs external to the database but on the same local machine would do the simulation and update the shards.


In any case I have rolled my own, and I think in terms of distribution its pretty good, of course the amount of interactions between entities will always be limited so I question whether its possible to use this for a massive FPS or anything like that but otherwise should support lots of entities.



Edited by drainedman

Share this post

Link to post
Share on other sites

I haven't seen anyone building a tightly coupled cluster on Beowulf, so that sounds interesting! Can you compare your use to other clustering solutions like kubernetes, or zeromq, or nodes-with-networking-in-mesh?

Also, how do you shard players onto nodes, and how do you shard entities onto nodes? How do you resolve player/player/entity interactions? (Who gets the loot first, or whatever?)

How far can you scale a "market square" where all players all want to be in the same place?

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!