Skip to content
Viet Nguyen edited this page Mar 22, 2016 · 23 revisions

##How Minecraft Normally Work Usually, in a traditional Minecraft server, player flow is like this:

        Player A          Player B          Player C
           |                 |                 |
           |                 |                 |
           |                 |                 |
           +-----------------+-----------------+
                             |
                             |
                             |Server 1
                             |
                             |
                             |world1
                          world1_nether
                          world1_the_end

Above is the old way of handling players using a single machine. Bottleneck usually happens when a single machine gets filled up with high amount of concurrent players.

#How to Scale Let's visualize a smarter way to distribute players. In Minecraftly, it's like this:

   Player A                       Player B                       Player C
      |                              |                              |
      |                              |                              |
      |                              |                              |
      ▼                              ▼                              ▼
  Server 1 or 2 or 3 or 4 or 5 or 6 or 7 or 8 or 9 or 10 or 11 or 12 ... or ∞
      |                              |                              |
      |                              |                              |
      |                              |                              |
      ▼                              ▼                              ▼
+-----------------------------------------------------------------------------+
| worldA                         worldB                        worldC         |
| worldA_nether                  worldB_nether                 worldC_nether  |
| worldA_the_end                 worldB_the_end                worldC_the_end |
+-----------------------------------------------------------------------------+

As you can see, in this method, it doesn't matter which server brings player his/her own world when they log in, as long as one server delivers the correct world to the correct player at the correct moment.

So, where do we store those world folders? The worlds are stored in a common file system or something? The answer is yes. It can simply be a NFS server or a scale out NAS cluster. Any solution works, as long as all servers share the same common file system folder.

Clone this wiki locally