An allocation is a request from a matchmaker to Game Server Hosting (Multiplay) to find the best possible game server for a game session. When a matchmaker needs a game server to host a game session, it makes a request to Game Server Hosting's APIs to allocate a game server for this purpose.
This page describes an overview of the allocation flow process, breaking it down step by step.
- Request allocation: The matchmaker makes an HTTP request to the Server Allocate API endpoint. The request includes the fleet-region in which the allocation should be made and the profile of the server to run.
- Hand off: Game Server Hosting hands the request off to its allocation processor. This is done asynchronously to prevent the matchmaker from having to hold a connection to the APIs for too long while waiting for a response.
- Find best available server: The allocation processor finds the best server from the available pool in the requested fleet-region, and then removes the selected game server from the available pool and marks it as allocated.
- Start game server: The allocation processor prepares the selected game server, applying configurations, and making sure the game server executable is running and on the correct version.
- Complete allocation request: After the game server is ready, Game Server Hosting stores the full server details against the allocation request so they can be returned to the matchmaker.
- Return allocation details: Meanwhile, the matchmaker is polling the Server Allocations API endpoint. When the request is complete, Game Server Hosting returns the details of the server to the matchmaker.