Terminology
Terms you should understand about scaling standby servers.- Target Standby – Also commonly known as Standby Target and Standing by target, it is a value set by the platform that specifies the target number of standby servers to have available to avoid standby pool starvation.
- Target Standby Floor– A game developer configurable measure representing the minimum floor quantity of servers kept idle to fulfill demand for new game servers.
- Actual Standby – The quantity of standby servers reported by the Multiplayer Servers platform where its values are distinct between when Dynamic Standby is enabled versus when Dynamic Standby is disabled.
- Pre-propping - Azure and PlayFab must create the virtual machine, initialize its operating system, and configure its environment. PlayFab drives this pre-propping activity before the virtual machine is assigned to a customer and billed.
- Propping - The game servers assets must be loaded, and the game server application itself often needs some time to prepare for players.
- Standing by In order to immediately fulfill demand for a multiplayer server, some servers are kept idle ready for players constantly.
Configuring target standby
You configure standing-by targets on a per build and per region basis. Typically you should set the standing-by level proportionally to the propping time and target allocation rate: Standing by Target = (Propping Time + Server time to standing by) * Target Allocation Rate For example, if a Linux server that takes 100 seconds to prop, and a game that is expected to have up to one server allocated every 5 seconds (0.2 servers/second). A standing by pool of 100 * 0.2 = 20 servers will stably support this build. After 100 seconds, 20 servers will be expended but there will have been time to build another 20. When calling theRequestMultiplayerServer API, it’s important to indicate all of the regions that are acceptable to the player experience. If region #1 doesn’t have a standing by server available, then region #2 will be requested and will continue for as many regions as you’ve configured.
Scaling benefits
A summary of scaling benefits includes:Scaling methods
PlayFab offers multiple mechanisms to scale when and how to scale your servers. Game developers have the flexibility of:- Configuring minimum & maximum thresholds
- Customizing scale configurations per server build profiles such as (a) instance types, (b) VM size, or (c) regions
- Managing change effortlessly from the developers’ portal or from the Multiplayer Servers RESTful API
- Monitor scaling metrics in server & usage charts
- Default
- Scheduled
- Dynamic
To fully embrace the breadth of scaling options, the following key concepts and terminology must be understood first.
Key Concepts
- Scaling mechanisms control the number of standby server availability
- Standby servers are VM allocated servers with no active connected players. These will transition in accepting for player connections in response to RequestMultiplayerServer API call; they transition to a termination state when the game server process exits
- Scaling mechanisms are uniquely applied at each region of a build
- Each scaling configuration is represented as a region override
