Class: Google::Apis::AppengineV1beta::AutomaticScaling

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/appengine_v1beta/classes.rb,
generated/google/apis/appengine_v1beta/representations.rb,
generated/google/apis/appengine_v1beta/representations.rb

Overview

Automatic scaling is based on request rate, response latencies, and other application metrics.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ AutomaticScaling

Returns a new instance of AutomaticScaling



393
394
395
# File 'generated/google/apis/appengine_v1beta/classes.rb', line 393

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#cool_down_periodString

Amount of time that the Autoscaler (https://cloud.google.com/compute/docs/ autoscaler/) should wait between changes to the number of virtual machines. Only applicable in the App Engine flexible environment. Corresponds to the JSON property coolDownPeriod

Returns:

  • (String)


318
319
320
# File 'generated/google/apis/appengine_v1beta/classes.rb', line 318

def cool_down_period
  @cool_down_period
end

#cpu_utilizationGoogle::Apis::AppengineV1beta::CpuUtilization

Target scaling by CPU usage. Corresponds to the JSON property cpuUtilization



323
324
325
# File 'generated/google/apis/appengine_v1beta/classes.rb', line 323

def cpu_utilization
  @cpu_utilization
end

#custom_metricsArray<Google::Apis::AppengineV1beta::CustomMetric>

Target scaling by user-provided metrics. Corresponds to the JSON property customMetrics



328
329
330
# File 'generated/google/apis/appengine_v1beta/classes.rb', line 328

def custom_metrics
  @custom_metrics
end

#disk_utilizationGoogle::Apis::AppengineV1beta::DiskUtilization

Target scaling by disk usage. Only applicable in the App Engine flexible environment. Corresponds to the JSON property diskUtilization



334
335
336
# File 'generated/google/apis/appengine_v1beta/classes.rb', line 334

def disk_utilization
  @disk_utilization
end

#max_concurrent_requestsFixnum

Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.Defaults to a runtime-specific value. Corresponds to the JSON property maxConcurrentRequests

Returns:

  • (Fixnum)


340
341
342
# File 'generated/google/apis/appengine_v1beta/classes.rb', line 340

def max_concurrent_requests
  @max_concurrent_requests
end

#max_idle_instancesFixnum

Maximum number of idle instances that should be maintained for this version. Corresponds to the JSON property maxIdleInstances

Returns:

  • (Fixnum)


345
346
347
# File 'generated/google/apis/appengine_v1beta/classes.rb', line 345

def max_idle_instances
  @max_idle_instances
end

#max_pending_latencyString

Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it. Corresponds to the JSON property maxPendingLatency

Returns:

  • (String)


351
352
353
# File 'generated/google/apis/appengine_v1beta/classes.rb', line 351

def max_pending_latency
  @max_pending_latency
end

#max_total_instancesFixnum

Maximum number of instances that should be started to handle requests for this version. Corresponds to the JSON property maxTotalInstances

Returns:

  • (Fixnum)


357
358
359
# File 'generated/google/apis/appengine_v1beta/classes.rb', line 357

def max_total_instances
  @max_total_instances
end

#min_idle_instancesFixnum

Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a service. Corresponds to the JSON property minIdleInstances

Returns:

  • (Fixnum)


363
364
365
# File 'generated/google/apis/appengine_v1beta/classes.rb', line 363

def min_idle_instances
  @min_idle_instances
end

#min_pending_latencyString

Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it. Corresponds to the JSON property minPendingLatency

Returns:

  • (String)


369
370
371
# File 'generated/google/apis/appengine_v1beta/classes.rb', line 369

def min_pending_latency
  @min_pending_latency
end

#min_total_instancesFixnum

Minimum number of running instances that should be maintained for this version. Corresponds to the JSON property minTotalInstances

Returns:

  • (Fixnum)


374
375
376
# File 'generated/google/apis/appengine_v1beta/classes.rb', line 374

def min_total_instances
  @min_total_instances
end

#network_utilizationGoogle::Apis::AppengineV1beta::NetworkUtilization

Target scaling by network usage. Only applicable in the App Engine flexible environment. Corresponds to the JSON property networkUtilization



380
381
382
# File 'generated/google/apis/appengine_v1beta/classes.rb', line 380

def network_utilization
  @network_utilization
end

#request_utilizationGoogle::Apis::AppengineV1beta::RequestUtilization

Target scaling by request utilization. Only applicable in the App Engine flexible environment. Corresponds to the JSON property requestUtilization



386
387
388
# File 'generated/google/apis/appengine_v1beta/classes.rb', line 386

def request_utilization
  @request_utilization
end

#standard_scheduler_settingsGoogle::Apis::AppengineV1beta::StandardSchedulerSettings

Scheduler settings for standard environment. Corresponds to the JSON property standardSchedulerSettings



391
392
393
# File 'generated/google/apis/appengine_v1beta/classes.rb', line 391

def standard_scheduler_settings
  @standard_scheduler_settings
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
# File 'generated/google/apis/appengine_v1beta/classes.rb', line 398

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)
  @custom_metrics = args[:custom_metrics] if args.key?(:custom_metrics)
  @disk_utilization = args[:disk_utilization] if args.key?(:disk_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_pending_latency = args[:max_pending_latency] if args.key?(:max_pending_latency)
  @max_total_instances = args[:max_total_instances] if args.key?(:max_total_instances)
  @min_idle_instances = args[:min_idle_instances] if args.key?(:min_idle_instances)
  @min_pending_latency = args[:min_pending_latency] if args.key?(:min_pending_latency)
  @min_total_instances = args[:min_total_instances] if args.key?(:min_total_instances)
  @network_utilization = args[:network_utilization] if args.key?(:network_utilization)
  @request_utilization = args[:request_utilization] if args.key?(:request_utilization)
  @standard_scheduler_settings = args[:standard_scheduler_settings] if args.key?(:standard_scheduler_settings)
end