Comment ils fonctionnent

Il y a trois aspects clés à saisir concernant les sessions : comment la capacité d'un déploiement est gérée, comment créer et gérer des déploiements pour héberger des sessions, et comment sélectionner le déploiement le plus adapté pour chaque requête de session.

Gestion de la capacité : comprendre les sessions dans le déploiement

La gestion de la capacité d'un déploiement dépend d'une décision centrale basée sur vos besoins spécifiques. Nous gérons les sockets de notre côté, en les remplissant jusqu'à une certaine limite. Vous devez simplement indiquer comment vous souhaitez que ces sockets soient remplis.

Nous proposons deux options : type-siège session ou type-match session. Nous vous aiderons à comprendre les différences entre ces types de session et à choisir celui qui convient le mieux à vos besoins de gestion de la capacité du déploiement.

Session de type siège

Avec type-siège session, chaque joueur de vos sessions dans votre déploiement occupe un espace de socket. Par exemple, si votre déploiement a dix sockets, un joueur solo et un groupe de quatre joueurs occuperaient cinq sockets sur les dix. Si vous supprimez la session du groupe, le nombre de sockets utilisés serait maintenant d'un.

Session de type match

Avec type-match session, chaque session de votre déploiement occupe un espace de socket indépendamment du nombre de joueurs présents dans la session. Par exemple, si votre déploiement dispose de cinq sockets, vous pourriez avoir trois parties de dix joueurs et cela compterait comme trois sockets sur les cinq, même si vous avez 30 joueurs connectés. Si vous supprimez les sessions de dix joueurs, le nombre de sockets utilisés serait maintenant de deux.

circle-check

Dans les deux cas, lorsque vous créez une requête de session, nous veillerons à choisir le meilleur déploiement pour héberger votre session qui dispose d'assez de sockets disponibles, en fonction du type de session que vous avez choisi (soit "type-siège", soit "type-match").

Création et gestion des déploiements pour les sessions

À la page précédente, nous avons mentionné l'option d'automatiser le processus de création de déploiements pour héberger vos sessions. Il existe deux façons de créer des déploiements pour vos sessions.

  1. Système d'arrière-plan personnalisé: Vous pouvez créer un système dans votre backend qui crée des déploiements au besoin pour vos sessions. Cette approche peut être plus adaptée si vous avez des exigences spécifiques ou si vous avez besoin de plus de contrôle sur le processus de déploiement.

  2. Option d'autodéploiement: Alternativement, vous pouvez activer l' autodeploy option dans votre version de l'application. Cela automatisera le processus de création de déploiements pour vos sessions, le rendant plus pratique et fluide. Chaque fois que vous demandez une session, s'il n'y a pas de déploiement disponible, le système lancera automatiquement un nouveau en quelques secondes, puis y liera votre session. Cela garantit que vos sessions sont hébergées en temps voulu, même s'il n'y a pas de déploiements existants disponibles au moment de votre demande.

circle-info

Cette option est incroyablement puissante car elle vous permet de déployer rapidement des serveurs de jeu dans les emplacements où vos joueurs en ont besoin. Lorsqu'elle est activée, elle répartit la charge sur plusieurs emplacements et l'équilibre au fil du temps, regroupant les joueurs sur les serveurs les plus populaires et fermant automatiquement les moins populaires (voir section suivante).

En gérant automatiquement l'infrastructure, vous pouvez économiser beaucoup d'argent à long terme sans aucune intervention de votre part. C'est une infrastructure de serveurs de jeu entièrement automatisée qui peut vous aider à optimiser l'utilisation et réduire les coûts.

circle-exclamation
circle-info

Il existe une troisième façon de gérer les déploiements pour vos sessions, qui se fait via le Flotte. Cependant, afin de garder cette documentation concise, nous n'aborderons pas ce sujet ici. Vous pouvez vous référer à la section dédiée sur Flotte pour toutes les informations nécessaires sur ce sujet.

Choisir le meilleur déploiement pour les requêtes de session

Il existe deux méthodes principales pour déterminer quel déploiement hébergera votre session.

  1. Affectation manuelle: Dans cette approche, votre backend connaîtra les déploiements disponibles et choisira un déploiement spécifique pour héberger votre session. Cela vous donne un contrôle total sur le processus de sélection du déploiement.

circle-check
  1. Système de décision breveté Edgegap: Alternativement, vous pouvez laisser le système de décision Edgegap choisir le meilleur déploiement en fonction de la télémétrie de vos joueurs. Ce système utilise des algorithmes avancés et l'analyse de données pour déterminer dynamiquement le déploiement optimal pour héberger votre session.

Les deux approches sont valides et peuvent être choisies en fonction de vos besoins et exigences spécifiques.

Si vous choisissez l'option 2, nous privilégions le regroupement des joueurs dans une certaine plage géographique par rapport à la télémétrie lors du choix d'un déploiement potentiel pour vos sessions car il est généralement plus agréable de jouer à des jeux multijoueurs avec d'autres plutôt que seul. Ceci est particulièrement pertinent dans le cas des jeux MMO, où plusieurs serveurs avec peu de joueurs peuvent être indésirables, et c'est une perspective en laquelle nous croyons.

Si aucun déploiement approprié n'est trouvé dans la zone, nous effectuerons une requête complète de télémétrie pour choisir le meilleur emplacement pour créer un déploiement et héberger votre session. Il est recommandé d'activer l' autodeploy option pour éviter l'échec de la session en raison de l'absence de déploiements disponibles.

Exemple d'utilisation réel

Utilisons un exemple pour expliquer cela. Imaginez qu'il y ait trois déploiements sans sessions, situés à New York, Washington et Chicago. Nous avons également un déploiement avec des sessions actives (serveur avec le cercle vert), ce qui signifie qu'il y a des joueurs disponibles pour jouer. Maintenant, supposons que deux joueurs veulent démarrer une nouvelle session.

À première vue, il pourrait sembler logique d'héberger la session dans le déploiement de New York puisqu'il est le plus proche de l'un des joueurs. Cependant, nous privilégions le regroupement des joueurs pour éviter de créer des serveurs presque vides. Ainsi, s'il existe un autre déploiement, comme Washington, qui est géographiquement bien positionné pour les deux joueurs, nous hébergerons la session là-bas à la place.

circle-info

Il existe plusieurs façons d'affiner la sélection des déploiements. Une méthode simple et couramment utilisée est de spécifier au moins le continent dans votre requête de session. De plus, dans une autre section, nous couvrirons la puissance des Sélecteurs, où vous pouvez filtrer les déploiements à l'aide d'un système de balises.

Mis à jour

Ce contenu vous a-t-il été utile ?