Oxeva, spécialiste de l’hébergement infogéré en cloud, annonce que la version web du jeu en ligne Les Loups Garous de Thiercelieux, édité par Celsius Online, studio indépendant de jeux vidéo, a pu absorber une hausse de 215 % du nombre de connexions simultanées et de 700 % du nombre de joueurs pendant la période de confinement liée à la crise sanitaire, grâce à l’aide d’Oxeva. Au-delà de l’augmentation du nombre de serveurs, Oxeva a repéré des problèmes dans le code applicatif qui ne permettaient pas d’absorber correctement les pics de charge.
Celsius Online : un studio indépendant de création de jeux vidéo
Fondé en 2004, Celsius Online, l’un des plus anciens studios indépendants français de jeux vidéo, développe et exploite des jeux qui connaissent un succès international, tels que Les Royaumes Renaissants, Mutants : Genetic Gladiators ou encore Primal Legends. L’entreprise a noué un partenariat avec Oxeva depuis 2008, qui héberge aujourd’hui en cloud privé infogéré sept de ses jeux.
En décembre 2018, Celsius Online a racheté la version en ligne Les Loups Garous de Thiercelieux et dispose de sa licence d’exploitation. Le jeu était alors hébergé sur un serveur mutualisé et connaissait des problèmes de performance.
« Oxeva a trouvé l’origine du problème : seulement 30 % de la puissance commandée était réellement utilisable. Nous avons décidé de changer d’hébergeur et de migrer sur notre cloud privatif infogéré par Oxeva », explique Mathias Latournerie, directeur de production chez Celsius Online. La migration a été réalisée mi-janvier 2020.
Absorber les pics de connexions simultanées dus au confinement
Au début du confinement, l’augmentation très importante et rapide du nombre de joueurs a eu un impact négatif sur les temps de réponses du jeu. Entre 21 h 30 et 23 h 30, il était impossible de lancer une partie, voire d’accéder au jeu. Aux heures de pointe, Les Loups Garous de Thiercelieux enregistrait 7 500 connexions simultanées, contre 3 500 en temps normal.
« Les pics de trafic et la forte sollicitation des serveurs web ont été détectés immédiatement par nos équipes et celles d’Oxeva », poursuit Mathias Latournerie.
L’équipe d’exploitation d’Oxeva a immédiatement ajouté des serveurs, puis au jour le jour en fonction de l’évolution du nombre de connexions, afin d’absorber les augmentations de charge successives. L’architecture du jeu est composée de serveurs web, de base de données, d’application (Node.js), No-SQL (Redis) et de cache. Durant cette période, six serveurs web ont été ajoutés (pour atteindre huit) et quatre serveurs Node.js (pour atteindre cinq).
« Depuis quelques années, nous sommes sur un cloud dédié chez Oxeva : nous avons utilisé notre puissance disponible pour gérer cette crise passagère. Cette opération a été réalisée sans aucun surcoût », précice Mathias Latournerie.
L’équipe d’exploitation d’Oxeva a aussi investigué pour identifier les points de contention sur la plateforme d’hébergement. Après validation, les modifications nécessaires sur les couches réseau et système, afin de gérer plusieurs centaines de milliers de requêtes chaque minute, ont été effectuées, sans aucune intervention du client.
Des optimisations dans le code applicatif pour absorber les pics de charge
Outre l’augmentation du nombre de serveurs, Olivier Doucet, directeur général d’Oxeva, a effectué une étude dans le but de recommander des optimisations sur certains points de contention du côté de l’application. Par exemple, il avait été initialement prévu une connexion permanente à travers un socket dans le code Node.js pour chaque joueur.
« L’application était limitée car elle ne prenait pas en charge le multithreading. Sur les conseils d’Oxeva, nous l’avons recodée pour qu’elle puisse exploiter tout le potentiel des processeurs multi-cœur », détaille Mathias Latournerie.
Par ailleurs, des optimisations du paramétrage applicatif ont été réalisées, et notamment une répartition dynamique des joueurs sur les serveurs de production. Enfin, la base de données du forum a été déplacée pour réduire la charge sur le serveur de base de données.
Désormais, l’application est plus scalable. Grâce aux optimisations apportées pendant le pic d’activité, Les Loups Garous de Thiercelieux a conservé une augmentation de 25 % des joueurs par rapport à la période pré-confinement.
« La manière dont Oxeva a géré la crise pendant le confinement a confirmé notre choix de leur faire confiance pour de prochaines applications à venir », conclut Mathias Latournerie.