class Google::Apis::AppengineV1beta5::AutomaticScaling

Automatic scaling is the scaling policy that App Engine has used since its inception. It is based on request rate, response latencies, and other application metrics.

Attributes

cool_down_period[RW]

The amount of time that the [Autoscaler](cloud.google.com/compute/docs/ autoscaler/) should wait between changes to the number of virtual machines. Applies only to the VM runtime. Corresponds to the JSON property `coolDownPeriod` @return [String]

cpu_utilization[RW]

Target scaling by CPU usage. Corresponds to the JSON property `cpuUtilization` @return [Google::Apis::AppengineV1beta5::CpuUtilization]

disk_utilization[RW]

Target scaling by disk usage (for VM runtimes only). Corresponds to the JSON property `diskUtilization` @return [Google::Apis::AppengineV1beta5::DiskUtilization]

max_concurrent_requests[RW]

The number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance. Default value is chosen based on the runtime. Corresponds to the JSON property `maxConcurrentRequests` @return [Fixnum]

max_idle_instances[RW]

The maximum number of idle instances that App Engine should maintain for this version. Corresponds to the JSON property `maxIdleInstances` @return [Fixnum]

max_pending_latency[RW]

The maximum amount of time that App Engine should allow a request to wait in the pending queue before starting a new instance to handle it. Corresponds to the JSON property `maxPendingLatency` @return [String]

max_total_instances[RW]

Max number of instances that App Engine should start to handle requests. Corresponds to the JSON property `maxTotalInstances` @return [Fixnum]

min_idle_instances[RW]

The minimum number of idle instances that App Engine should maintain for this version. Only applies to the default version of a service, since other versions are not expected to receive significant traffic. Corresponds to the JSON property `minIdleInstances` @return [Fixnum]

min_pending_latency[RW]

The minimum amount of time that App Engine should allow a request to wait in the pending queue before starting a new instance to handle it. Corresponds to the JSON property `minPendingLatency` @return [String]

min_total_instances[RW]

Minimum number of instances that App Engine should maintain. Corresponds to the JSON property `minTotalInstances` @return [Fixnum]

network_utilization[RW]

Target scaling by network usage (for VM runtimes only). Corresponds to the JSON property `networkUtilization` @return [Google::Apis::AppengineV1beta5::NetworkUtilization]

request_utilization[RW]

Target scaling by request utilization (for VM runtimes only). Corresponds to the JSON property `requestUtilization` @return [Google::Apis::AppengineV1beta5::RequestUtilization]

Public Class Methods

new(**args) click to toggle source
# File generated/google/apis/appengine_v1beta5/classes.rb, line 603
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File generated/google/apis/appengine_v1beta5/classes.rb, line 608
def update!(**args)
  @cool_down_period = args[:cool_down_period] if args.key?(:cool_down_period)
  @cpu_utilization = args[:cpu_utilization] if args.key?(:cpu_utilization)
  @max_concurrent_requests = args[:max_concurrent_requests] if args.key?(:max_concurrent_requests)
  @max_idle_instances = args[:max_idle_instances] if args.key?(:max_idle_instances)
  @max_total_instances = args[:max_total_instances] if args.key?(:max_total_instances)
  @max_pending_latency = args[:max_pending_latency] if args.key?(:max_pending_latency)
  @min_idle_instances = args[:min_idle_instances] if args.key?(:min_idle_instances)
  @min_total_instances = args[:min_total_instances] if args.key?(:min_total_instances)
  @min_pending_latency = args[:min_pending_latency] if args.key?(:min_pending_latency)
  @request_utilization = args[:request_utilization] if args.key?(:request_utilization)
  @disk_utilization = args[:disk_utilization] if args.key?(:disk_utilization)
  @network_utilization = args[:network_utilization] if args.key?(:network_utilization)
end