AWS Gamelift sera obsolète au profit de la conteneurisation

Au cours des dernières années, AWS Gamelift a été une solution dominante pour les studios de jeux à la recherche d'une infrastructure fiable et hautement évolutive pour leurs serveurs de jeux. Cependant, la conteneurisation a maintenant permis aux studios de répliquer facilement et d'améliorer ce que Gamelift vantait auparavant comme leur avantage concurrentiel.

AWS Gamelift était là au bon moment pour les studios de jeux

Il ne fait aucun doute qu'AWS Gamelift est l'une des solutions les plus utilisées pour les grands et petits studios de jeux. Sa domination peut s'expliquer par le réel avantage qu'il offrait aux studios en période de besoin. Si nous remontons quelques années en arrière, les studios de jeux étaient laissés pour compte dans la grande vague de cloudification de l'infrastructure en raison de problèmes de coût. Contrairement à la plupart des applications, le trafic de jeux peut augmenter de 2 à 10 fois davantage pendant une heure de pointe par rapport à un jour moyen. En combinant cela avec le fait que les serveurs de jeux nécessitent une bonne quantité de CPU et de mémoire pour fonctionner de manière constante, l'industrie du jeu ne pouvait tout simplement pas justifier le passage des serveurs bare metal à l'utilisation de l'informatique cloud en raison de ses coûts intrinsèquement plus élevés.

Voici AWS Gamelift ; le sauveur pour les directeurs techniques et les CTO du monde entier. Vous pouviez désormais faire évoluer votre infrastructure à la demande en fonction du trafic et ne payer que pour la capacité utilisée à tout moment. Configurez simplement votre environnement de serveur de jeu qui doit être répliqué, demandez de nouveaux serveurs quand vous voyez plus de demande, et fermez des serveurs quand votre base de joueurs retourne à l'école après une nuit blanche à jouer à votre jeu génial.

Maintenant, si vous êtes développeur et que vous ne vivez pas sous un rocher, les avantages mentionnés dans le paragraphe précédent devraient vous parler :

  • Consistance de déploiement – VÉRIFIEZ

  • Évolutivité basée sur le trafic – VÉRIFIEZ

  • Coût basé sur l'utilisation réelle – VÉRIFIEZ

Attendez, c'est exactement ce que fait un conteneur ! Pourquoi les studios de jeux n'ont-ils pas simplement construit une infrastructure basée sur des conteneurs ? La réponse est assez simple, en réalité, les conteneurs ne connaissaient pas le taux d'adoption qu'ils reçoivent aujourd'hui en 2018, lorsque AWS Gamelift a été lancé. Mais les choses changent lentement…

La conteneurisation fait tout ce que Gamelift fait, mais mieux

Nous avons maintenant vu quelques points qui montrent comment Gamelift offre des avantages similaires à la conteneurisation. Cependant, Gamelift n'est malheureusement pas une solution conteneur ; il exécute toujours un binaire de serveur de jeux et toutes ses dépendances dans une machine virtuelle quelque part, avec toutes les difficultés que cela peut apporter. Si c'était une solution basée sur des conteneurs, elle bénéficierait également de :

  • Mobilité : prenez votre conteneur et vous pouvez l'exécuter partout, pas seulement sur AWS.

  • Fiabilité grâce à une infrastructure semblable à du bétail : si quelque chose ne fonctionne pas, tuez-le automatiquement et lancez-en un nouveau.

  • efficacité évolutive : les conteneurs peuvent être lancés en quelques secondes. AWS Gamelift est lent et doit être évolué de manière préventive, avec une flotte constante de serveurs vides coûteux attendant juste que les joueurs arrivent.

  • Mises à jour et retours en arrière faciles : les conteneurs sont facilement versionnés, conservant toutes les configurations et dépendances en interne. Il est facile d'avoir plusieurs versions fonctionnant en même temps et simple de revenir en arrière en cas de problèmes.

Conteneurs : La mise à l'échelle de la capacité suit précisément la courbe de demande des joueurs.

Cloud (Gamelift) : Une capacité supplémentaire non utilisée doit toujours être disponible en cas d'augmentation de la demande des joueurs.

Cloud hybride : Une base de serveurs bare metal moins chère est utilisée, restant inoccupée lorsque la demande est faible, et une mise à l'échelle supplémentaire est faite sur le cloud, encore une fois avec une capacité supplémentaire non utilisée.

Bare metal : La capacité est fixe, et doit donc être en mesure de gérer le pic de joueurs, ce qui entraîne une surcapacité considérable pendant la plupart de la journée.

Avec les bons outils, les conteneurs simplifient les choses pour les développeurs et améliorent l'expérience des joueurs

Les conteneurs sont géniaux en eux-mêmes, mais avec les bons outils et les bons partenaires, vous pouvez commencer à voir certaines des choses tournées vers l'avenir que seule la conteneurisation peut apporter :

  • Multi-cloud, Multi-edge ou Hybride : la mobilité signifie que vous pouvez exécuter vos conteneurs n'importe où. Alors pourquoi ne pas les exécuter… partout ? Il est facile de rapprocher vos serveurs de jeux de vos joueurs avec une approche multidimensionnelle, ce qui peut entraîner une latence plus faible et une expérience utilisateur améliorée. Vous pourriez même réaliser des économies simplement en choisissant l'emplacement le moins cher parmi différents fournisseurs dans la même ville.

  • Distribution mondiale sans coûts mondiaux : Vous n'êtes pas sûr que votre jeu sera un succès au Moyen-Orient ? Incertain si les joueurs de Corée du Sud trouveront votre personnage principal culturellement pertinent ? Peu importe ! Vous n'avez pas besoin de configurer des serveurs de jeux dans l'espoir que certains joueurs rejoignent, et d'encourir des coûts simplement pour tester un nouveau marché. Les conteneurs peuvent être déployés en quelques secondes lorsque les joueurs veulent jouer, là où ils veulent jouer.

  • Visibilité précise sur tout déploiement : l'une des grandes plaintes lorsque l'on parle d'infrastructure cloud est son manque de transparence. Avec les conteneurs, les studios ont une pleine observabilité sur la façon dont leur application se comporte à tout moment en termes d'utilisation des ressources, de performances, de traçabilité des déploiements, etc.

  • Gestion automatisée : plus de régions à gérer, plus de provisionnement de serveurs, régulation autonome des serveurs, ce qui se traduit par moins de personnes et de ressources pour gérer le backend.

Alors, quel est l'avenir pour AWS Gamelift ?

AWS Gamelift était un produit fantastique pour son époque, mais ce n'était qu'une question de temps avant qu'il soit supplanté par une technologie meilleure et plus flexible. AWS Fargate est une solution basée sur des conteneurs qui pourrait être utilisée par les studios de jeux, mais lorsqu'il faut entre 45 secondes et 2 minutes pour démarrer une instance pendant que vos joueurs attendent, ce n'est pas une excellente expérience pour le joueur. Azure et Google ont tenté de reproduire le succès d'AWS Gamelift avec leurs propres produits ces dernières années, mais n'ont pas rencontré beaucoup de succès. Google Agones a la bonne idée, mais la mauvaise mise en œuvre ; il gère une flotte de serveurs, bien que conteneurisés, mais doit toujours être évolué en fonction des demandes faites par le studio de jeux. Cela apporte tous les inconvénients de Gamelift, avec quelques avantages de la conteneurisation. D'accord, Google ? Azure pourrait avoir plus de succès en combinant son offre Azure Container Instance avec ses services backend Playfab, mais ils semblent trop occupés à résoudre les problèmes d'infrastructure de leurs propres jeux pour comprendre comment faire une offre convaincante pour d'autres studios de jeux.

Il existe quelques solutions qui émergent et qui peuvent faciliter la transition d'AWS Gamelift vers une solution d'orchestration basée sur des conteneurs. Mais pour que Gamelift reste pertinent dans un avenir proche, il aura besoin de plus qu'un relooking... (Oui, j'ai vraiment terminé cet article avec ce horrible jeu de mots)

Écrit par

l'équipe Edgegap