Les MMORPG, certains MOBA comme League of Legends ou même StarCraft 2 vous obligent généralement à choisir un serveur. Habituellement, ce sont les États-Unis, l'UE et la MER, dans les MMORPG, beaucoup par emplacement. Je peux voir que cela était nécessaire il y a quelques années, mais maintenant avec l'avènement d'AWS et d'offres similaires qui vous permettent de faire évoluer de manière transparente votre "puissance du serveur", pourquoi y a-t-il encore des serveurs séparés?
Mon train de pensée est comme ceci (en utilisant Star Wars: The Old Republic comme exemple): - Vous êtes toujours sur une planète, une "instance" isolée des autres planètes. - S'il y a trop de gens sur une planète, SW: TOR crée une nouvelle instance du monde et y met des joueurs. - Si vous quittez le monde / changez d'instance, vous avez un écran de chargement
Alors pourquoi le jeu ne peut-il pas créer une instance pour cette planète. Cette instance (et seulement celle-ci) a vos données actuelles dans sa base de données et gère x joueurs. Dès que les joueurs x-50 sont sur cette instance, un nouveau serveur se déclenche et de nouvelles personnes apparaissent sur cette instance. Les 50 places sont réservées pour passer à votre groupe, etc.
Il pourrait y avoir une instance pour les trois régions principales pour maintenir la latence faible, mais cela vous permettrait de jouer avec d'autres joueurs de SEA, par exemple, si vous pouvez vivre avec un retard de 140 ms (ce qui n'est toujours rien à mon humble avis).
Chaque fois que vous changez d'instance ou voyagez dans un autre monde, votre serveur actuel transmet toutes vos données au serveur suivant, en vous assurant que vous n'avez pas besoin d'une grande base de données centralisée. Vous pouvez toujours en avoir un qui reçoit périodiquement des mises à jour à des fins d'analyse.
Lorsque vous vous déconnectez ou que les serveurs perdent la connexion, les données peuvent ensuite être transférées dans une énorme base de données optimisée pour le stockage des données. Les serveurs d'instance peuvent ensuite être optimisés pour un débit élevé.
Y a-t-il une raison particulière pour laquelle cela ne fonctionnera pas? Y a-t-il d'autres problèmes qui me manquent?