~/MyWiki

MMO

Dans MMO · Par Yuuki · Mis à jour le 06/08/2026

Qu'est-ce que c'est

Un MMO (Massively Multiplayer Online) est un jeu en ligne conçu pour accueillir un très grand nombre de joueurs simultanés dans un monde persistant partagé. Techniquement, c'est l'un des défis les plus exigeants du développement de jeu : architecture serveur distribuée, persistance de données à grande échelle, synchronisation réseau optimisée.

Cas d'usage

  • Mondes persistants massivement multijoueurs (MMORPG et dérivés)
  • Simulation à grande échelle nécessitant sharding géographique ou fonctionnel des joueurs
  • Économies de jeu complexes nécessitant une forte cohérence des données (transactions, inventaire)

Concepts / commandes clés

Concepts d'architecture typiques : sharding (découpage du monde ou des joueurs en plusieurs serveurs/instances), zone/instance server (serveurs dédiés à une zone géographique du monde), matchmaking et load balancing des connexions, base de données persistante pour les personnages/inventaires (souvent couplée à du cache type Redis pour les données chaudes), file de messages pour les événements asynchrones (guildes, mail en jeu, etc.).

Exemple d'architecture simplifiée :
Client -> Gateway/Load Balancer -> Zone Server (monde)
                                 -> Auth Server
                                 -> Base de données persistante (personnages, inventaire)

Bonnes pratiques / points d'attention

  • Commencer petit : un MMO complet est un projet énorme, prototyper d'abord un multijoueur simple avant de viser le "massif"
  • Prévoir la persistance des données dès la conception (sauvegardes régulières, cohérence transactionnelle sur les objets de valeur)
  • Anticiper la modération et la triche (le "M" massif attire aussi les comportements abusifs à grande échelle)
  • Section à compléter avec les choix d'architecture spécifiques envisagés pour un projet MMO perso

Ressources