Multicluster technology is about to hit the live server. This will bring major improvements in terms of ping and server side game performance. It’s scheduled to come out together with update 0.5.10.
What a multicluster is?
To put it simply, a multicluster is a distribution of the gaming cluster (a computing system consisting of a large number of servers) capacity into several parts, which separately process various game elements. For example, the battles, the players’ actions in the Port, payment systems of account data – all of this is processed separately and does not compete for the computing power, which increases the reliability and stability of the cluster.
How did it previously work?
All gaming services and processes, such as creating battles, synchronising users’ accounts, players’ actions in the Port etc., were joined in one common cluster. The cluster’s power was distributed between them evenly — it maintained all processes and reacted to the actions of all the players.
While this technology has its pros, its main weak point is its reliability and load resistance. Different processes may compete for the resources of an individual server from the cluster, which can sometimes lead to a conflict of the gaming systems and services. If a load is too heavy or, for example, a hardware failure appears, the server may crash or, in some cases, even bring down an entire cluster. As a result, the game will be inaccessible for some time and players will be forced to wait for the reload.
How will it work now?
The multicluster technology goes in the other direction and instead of consolidating all the game processes, it will distribute them into multiple concurrent and independent levels.
After switching to this technology, the architecture of our servers will consist of three levels:
- The central cluster — The first and highest level. It’s kind of a centre that ties together all the lower-level processes and synchronises them with the payment system, players’ accounts and other services.
- The second level clusters — all players’ actions in the Port, team selection and divisions creation are processed on this level.
- Battle clusters — the third level. These clusters carry all battles and then they pass the results to the second level for processing.
All three levels work completely independently — they do not compete for system power or interfere with one another, which could result in a reduced server load. At the same time, the existence of the separate clusters will be completely unnoticeable from the users’ perspective. Players in the same battle, or even in the same division, could well be on different clusters and will be temporarily united to battle together.
How will the players benefit from this?
The multicluster technology’s main advantages are flexibility and reliability. For example, it allows us to almost completely get rid of the full resets of the gaming clusters, even when carrying out maintenance work, or in the event of equipment failure. Any of the battle clusters could be gradually disabled after waiting for the completion of all ongoing battles. In such case, all players would automatically go to battles on other clusters, without even noticing the transition.
Soon, you will be able to see all the advantages of this new technology with your own eyes. The transition to the multicluster will happen alongside the release of Update 0.5.10!