Class: AWSCDK::GameLift::CfnFleet::RuntimeConfigurationProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
game_lift/cfn_fleet.rb

Overview

A collection of server process configurations that describe the set of processes to run on each instance in a fleet.

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. Learn more about Running Multiple Processes on a Fleet .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(game_session_activation_timeout_seconds: nil, max_concurrent_game_session_activations: nil, server_processes: nil) ⇒ RuntimeConfigurationProperty

Returns a new instance of RuntimeConfigurationProperty.

Parameters:

  • game_session_activation_timeout_seconds (Numeric, nil) (defaults to: nil)

    The maximum amount of time (in seconds) allowed to launch a new game session and have it report ready to host players.

  • max_concurrent_game_session_activations (Numeric, nil) (defaults to: nil)

    The number of game sessions in status ACTIVATING to allow on an instance or compute.

  • server_processes (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::GameLift::CfnFleet::ServerProcessProperty>, nil) (defaults to: nil)

    A collection of server process configurations that identify what server processes to run on fleet computes.



1360
1361
1362
1363
1364
1365
1366
1367
# File 'game_lift/cfn_fleet.rb', line 1360

def initialize(game_session_activation_timeout_seconds: nil, max_concurrent_game_session_activations: nil, server_processes: nil)
  @game_session_activation_timeout_seconds = game_session_activation_timeout_seconds
  Jsii::Type.check_type(@game_session_activation_timeout_seconds, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "gameSessionActivationTimeoutSeconds") unless @game_session_activation_timeout_seconds.nil?
  @max_concurrent_game_session_activations = max_concurrent_game_session_activations
  Jsii::Type.check_type(@max_concurrent_game_session_activations, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "maxConcurrentGameSessionActivations") unless @max_concurrent_game_session_activations.nil?
  @server_processes = server_processes
  Jsii::Type.check_type(@server_processes, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZ2FtZWxpZnQuQ2ZuRmxlZXQuU2VydmVyUHJvY2Vzc1Byb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "serverProcesses") unless @server_processes.nil?
end

Instance Attribute Details

#game_session_activation_timeout_secondsNumeric? (readonly)

The maximum amount of time (in seconds) allowed to launch a new game session and have it report ready to host players.

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 .



1375
1376
1377
# File 'game_lift/cfn_fleet.rb', line 1375

def game_session_activation_timeout_seconds
  @game_session_activation_timeout_seconds
end

#max_concurrent_game_session_activationsNumeric? (readonly)

The number of game sessions in status ACTIVATING to allow on an instance or compute.

This setting limits the instance resources that can be used for new game activations at any one time.



1382
1383
1384
# File 'game_lift/cfn_fleet.rb', line 1382

def max_concurrent_game_session_activations
  @max_concurrent_game_session_activations
end

#server_processesAWSCDK::IResolvable, ... (readonly)

A collection of server process configurations that identify what server processes to run on fleet computes.



1387
1388
1389
# File 'game_lift/cfn_fleet.rb', line 1387

def server_processes
  @server_processes
end

Class Method Details

.jsii_propertiesObject



1389
1390
1391
1392
1393
1394
1395
# File 'game_lift/cfn_fleet.rb', line 1389

def self.jsii_properties
  {
    :game_session_activation_timeout_seconds => "gameSessionActivationTimeoutSeconds",
    :max_concurrent_game_session_activations => "maxConcurrentGameSessionActivations",
    :server_processes => "serverProcesses",
  }
end

Instance Method Details

#to_jsiiObject



1397
1398
1399
1400
1401
1402
1403
1404
1405
# File 'game_lift/cfn_fleet.rb', line 1397

def to_jsii
  result = {}
  result.merge!({
    "gameSessionActivationTimeoutSeconds" => @game_session_activation_timeout_seconds,
    "maxConcurrentGameSessionActivations" => @max_concurrent_game_session_activations,
    "serverProcesses" => @server_processes,
  })
  result.compact
end