About GameLift hosting resources - Amazon GameLift

About GameLift hosting resources

This topic describes the key resources that you work with when using the GameLift service to host your games. Learn more about how GameLift works in How GameLift works.

The following diagram illustrates the basic structure of GameLift resources and how they relate to each other.


            Diagram shows how GameLift resource objects are organized: a build or script is
                used to create a fleet, a fleet is given an alias, and fleets can be added by their
                alias to a game session queue. For games that use FlexMatch matchmaking, the game
                session queue and a matchmaking rule set are used to create a matchmaking
                configuration. A GameLift resource set can contain one fleet or multiple fleets that
                are deployed with compatible builds or scripts. A game session queue can point to
                multiple fleet aliases.
Game server code
  • Build – Your custom-built game server software that runs on GameLift and hosts game sessions for your players. A game build represents the set of files that run your game server on a particular operating system. You can have many different builds, such as for different flavors of your game. The game build must be integrated with the GameLift service. You upload game build files to the GameLift service in the Regions where you plan to set up fleets. See more details in Uploading builds and scripts to GameLift.

  • Script – Your configuration and custom game logic for use with Realtime Servers. Realtime Servers are provided by GameLift to use instead of a custom-built game server. You configure Realtime Servers for your game clients by creating a script using JavaScript, and add custom game logic as appropriate to host game sessions for your players. You upload the Realtime script to the GameLift service in the Regions where you plan to set up fleets. See more details about builds and scripts in Uploading builds and scripts to GameLift.

Fleet

A collection of virtual computing resources, called instances, that run your game servers and host game sessions for your players. You define the type of instances to use (hardware/software configuration, Spot or On-Demand availability), select a custom game build or a Realtime server script to deploy, and specify one or more locations to deploy instances to. You also provide a runtime configuration, which controls how game servers are run on each instance, and configure other game management properties for the fleet. You manage a fleet's capacity, which determines how many game sessions and players it can support, using either manual or automatic scaling. You can create multiple single-location fleets, which deploy instances only in the Region where they are created (referred to as the "home" Region). Alternatively, you can create a multi-location fleet, which can deploy instances to any other GameLift-supported Regions as "remote" locations as well as the home Region. For information on AWS Regions that support single-location and multi-location fleets, see Using Amazon GameLift in AWS Regions. See more details about fleets in Setting up GameLift fleets.

Game session queue

A game session placement mechanism that receives requests for new game sessions and searches for an available game server to host the new game session. When an available game server is located, the game session queue prompts the server to start a new game session and returns connection information back to the requester. You provide a list of fleets where the queue can search for available game servers, which can vary by instance type, availability types (Spot or On-Demand) and geographical locations. You can also provide a set of placement priorities, based on player latency, hosting cost, and location preference, which FleetIQ can use to select the "best possible" game server to host a requested game session. The game session queue is an essential element of the game server management layer; it has a significant impact on player experience and efficient usage of hosting resources. Game session queues can be created in any AWS Region that is supported by GameLift. See more details about game session queues in Setting up GameLift queues for game session placement.

Alias

Abstract identifier for a fleet. You can change the fleet it points to at any time. It is good practice to use an alias wherever you need to reference a specific fleet, such as in a game session queue. Aliases allow you to easily and smoothly shift players from one fleet to another, with no disruption, by simply switching an alias's target fleet. You create an alias in the same region as the fleet it points to. See more details about aliases in Add an alias to a GameLift fleet.