Amazon GameLift

8 Debugging Techniques
15th December 2022
Helpful Ways to Deal with Stress At Work
17th December 2022

With Amazon GameLift, you can deploy, operate, and scale dedicated, low-cost servers in the cloud for session-based multiplayer games. Built on AWS global computing infrastructure, GameLift helps deliver high-performance, high-reliability game servers while dynamically scaling your resource usage to meet worldwide player demand.

Scale dedicated game servers

Focus on developing game content and minimize time spent on building and managing game server infrastructure. 

Bring your own hardware

Iterate game builds on local workstations and manage game sessions across any server hosting infrastructure.

Onboard server workloads to the cloud

Move live games and launch new ones in the cloud using your existing server management tools and software with GameLift FleetIQ.

Match players and support cross-play

Define rules to support cross-platform play and place players into peer-to-peer, on-premises, or cloud game servers with GameLift FlexMatch.

Features of GameLift

The features and benefits of using GameLift include:

  • Use your own custom multiplayer game servers or use ready-to-go Realtime servers that require minimal configuration and little-or-no backend experience.
  • Get started fast and pay only for what you use, with no upfront costs and no long-term commitments.
  • Reduce costs by up to 90 percent with Amazon Elastic Compute Cloud (Amazon EC2) Spot Instances.
  • Use auto scaling to manage your hosting capacity.
  • Use the GameLift FleetIQ algorithm with your own Amazon EC2 compute resources.
  • Use GameLift FlexMatch to define matchmaking for your multiplayer games.
  • Use GameLift Anywhere to quickly and iteratively test your game server and client builds. With GameLift Anywhere, you can use GameLift tools and algorithms with your own hardware.

With GameLift, you can host your game servers in three different ways: Managed GameLift, GameLift FleetIQ, and GameLift Anywhere. Managed GameLift and GameLift Anywhere both use GameLift fleets to manage your game servers. For more information about GameLift FleetIQ.

You can design a fleet to fit your game’s needs.

Managed GameLift

With managed GameLift, you can host your game servers on GameLift virtual computing resources, called instances. Set up your hosting resources by creating a fleet of instances and deploying them to run your game servers.

GameLift Anywhere

With GameLift Anywhere, you can host your game servers on hardware that you manage. Set up your hosting resources by creating an Anywhere fleet that references your hardware. You can use GameLift tools such as FlexMatch, queues, and monitoring with your Anywhere fleet.

Fleet aliases

An alias is a designation that you can transfer between fleets, making it a convenient way to have a generic fleet location. You can use an alias to switch game clients from using one fleet to another without having to change your game client. You can also create a terminal alias, which lets you point to content instead of connecting to a server. You can use an alias to transfer between managed and Anywhere fleets.

Running game sessions

After you deploy your game server code to a fleet and GameLift launches game server processes on each instance, the fleet can host game sessions. GameLift starts new game sessions when your game client service sends a placement request to the backend service or to GameLift.

Game session placement and the FleetIQ algorithm

Game session placement handles the task of selecting an available game server to host a new game session. The key component for game session placement is the GameLift game session queue.

You assign a game session queue a list of fleets, which determines where the queue can place game sessions. As a best practice, your queue’s fleets should vary in fleet type, location, and instance type. This diversity gives the queue greater flexibility to make placements wherever they make most sense for players. For more information about game session queues and how to design them for your game, see Design a game session queue.

Queues use an algorithm, called FleetIQ, to look for the best possible placement for each game session request. The FleetIQ algorithm prioritizes the search for available game servers based on low player latency, hosting costs, geographical locations, or other fleet characteristics. For more information about FleetIQ, see How GameLift queues works.

Player connections to games

As part of the game session placement process, the queue prompts the selected game server to start a new game session. The game server responds to the prompt and reports back to GameLift when it’s ready to accept player connections. GameLift then delivers connection information to the backend service or game client service, as an IP address or DNS name, and a port. Your game clients use this information to connect directly to the game session and begin gameplay.

Additional scaling features

  • Game session protection – Prevent GameLift from ending game sessions that are hosting active players during a scale-down event.
  • Scaling limits – Control overall instance usage by setting minimum and maximum limits on the number of instances in a fleet.
  • Suspending auto scaling – Suspend auto scaling at the fleet location level without changing or deleting your auto scaling policies.
  • Scaling metrics – Track a fleet’s history of capacity and scaling events.

Pricing for GameLift

GameLift charges for instances by duration of use, and for bandwidth by quantity of data transferred. For a complete list of charges and prices for GameLift, see Amazon GameLift Pricing.

for more related information XpertLab