Class RuntimeConfiguration
(experimental) A collection of server process configurations that describe the set of processes to run on each instance in a fleet.
Inheritance
Implements
Namespace: Amazon.CDK.AWS.GameLift.Alpha
Assembly: Amazon.CDK.AWS.GameLift.Alpha.dll
Syntax (csharp)
public class RuntimeConfiguration : Object, IRuntimeConfiguration
Syntax (vb)
Public Class RuntimeConfiguration
Inherits Object
Implements IRuntimeConfiguration
Remarks
Server processes run either an executable in a custom game build or a Realtime Servers script. GameLift launches the configured processes, manages their life cycle, and replaces them as needed. Each instance checks regularly for an updated runtime configuration.
A GameLift instance is limited to 50 processes running concurrently.
To calculate the total number of processes in a runtime configuration, add the values of the ConcurrentExecutions
parameter for each ServerProcess
.
Stability: Experimental
See: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-multiprocess.html
ExampleMetadata: infused
Examples
Build build;
// Server processes can be delcared in a declarative way through the constructor
var fleet = new BuildFleet(this, "Game server fleet", new BuildFleetProps {
FleetName = "test-fleet",
Content = build,
InstanceType = InstanceType.Of(InstanceClass.C4, InstanceSize.LARGE),
RuntimeConfiguration = new RuntimeConfiguration {
ServerProcesses = new [] { new ServerProcess {
LaunchPath = "/local/game/GameLiftExampleServer.x86_64",
Parameters = "-logFile /local/game/logs/myserver1935.log -port 1935",
ConcurrentExecutions = 100
} }
}
});
Synopsis
Constructors
Runtime |
Properties
Game |
(experimental) The maximum amount of time allowed to launch a new game session and have it report ready to host players. |
Max |
(experimental) The number of game sessions in status |
Server |
(experimental) A collection of server process configurations that identify what server processes to run on each instance in a fleet. |
Constructors
RuntimeConfiguration()
public RuntimeConfiguration()
Properties
GameSessionActivationTimeout
(experimental) The maximum amount of time allowed to launch a new game session and have it report ready to host players.
public Duration GameSessionActivationTimeout { get; set; }
Property Value
Remarks
During this time, the game session is in status ACTIVATING
.
If the game session does not become active before the timeout, it is ended and the game session status is changed to TERMINATED
.
Default: by default game session activation timeout is 300 seconds
Stability: Experimental
MaxConcurrentGameSessionActivations
(experimental) The number of game sessions in status ACTIVATING
to allow on an instance.
public Nullable<double> MaxConcurrentGameSessionActivations { get; set; }
Property Value
System.
Remarks
This setting limits the instance resources that can be used for new game activations at any one time.
Default: no limit
Stability: Experimental
ServerProcesses
(experimental) A collection of server process configurations that identify what server processes to run on each instance in a fleet.
public IServerProcess[] ServerProcesses { get; set; }
Property Value
Remarks
Stability: Experimental