Class RuntimeConfiguration
(experimental) A collection of server process configurations that describe the set of processes to run on each instance in a fleet.
Implements
Inherited Members
Namespace: Amazon.CDK.AWS.GameLift.Alpha
Assembly: Amazon.CDK.AWS.GameLift.Alpha.dll
Syntax (csharp)
public class RuntimeConfiguration : IRuntimeConfiguration
Syntax (vb)
Public Class RuntimeConfiguration 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
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
| RuntimeConfiguration() | (experimental) A collection of server process configurations that describe the set of processes to run on each instance in a fleet. |
Properties
| GameSessionActivationTimeout | (experimental) The maximum amount of time allowed to launch a new game session and have it report ready to host players. |
| MaxConcurrentGameSessionActivations | (experimental) The number of game sessions in status |
| ServerProcesses | (experimental) A collection of server process configurations that identify what server processes to run on each instance in a fleet. |
Constructors
RuntimeConfiguration()
(experimental) A collection of server process configurations that describe the set of processes to run on each instance in a fleet.
public RuntimeConfiguration()
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
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
} }
}
});
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 double? MaxConcurrentGameSessionActivations { get; set; }
Property Value
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