Class: Google::Apis::ComputeAlpha::AutoscalingPolicyQueueBasedScaling

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

Overview

Configuration parameters of autoscaling based on queuing system.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Google::Apis::Core::JsonObjectSupport

#to_json

Methods included from Google::Apis::Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ AutoscalingPolicyQueueBasedScaling

Returns a new instance of AutoscalingPolicyQueueBasedScaling.



2473
2474
2475
# File 'generated/google/apis/compute_alpha/classes.rb', line 2473

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

Instance Attribute Details

#acceptable_backlog_per_instanceFloat

Scaling based on the average number of tasks in the queue per each active instance. The autoscaler keeps the average number of tasks per instance below this number, based on data collected in the last couple of minutes. The autoscaler will also take into account incoming tasks when calculating when to scale. Corresponds to the JSON property acceptableBacklogPerInstance

Returns:

  • (Float)


2459
2460
2461
# File 'generated/google/apis/compute_alpha/classes.rb', line 2459

def acceptable_backlog_per_instance
  @acceptable_backlog_per_instance
end

#cloud_pub_subGoogle::Apis::ComputeAlpha::AutoscalingPolicyQueueBasedScalingCloudPubSub

Configuration parameters for scaling based on Cloud Pub/Sub subscription queue. Corresponds to the JSON property cloudPubSub



2464
2465
2466
# File 'generated/google/apis/compute_alpha/classes.rb', line 2464

def cloud_pub_sub
  @cloud_pub_sub
end

#single_worker_throughput_per_secFloat

The scaling algorithm will also calculate throughput estimates on its own; if you explicitly provide this value, the autoscaler will take into account your value as well as automatic estimates when deciding how to scale. Corresponds to the JSON property singleWorkerThroughputPerSec

Returns:

  • (Float)


2471
2472
2473
# File 'generated/google/apis/compute_alpha/classes.rb', line 2471

def single_worker_throughput_per_sec
  @single_worker_throughput_per_sec
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2478
2479
2480
2481
2482
# File 'generated/google/apis/compute_alpha/classes.rb', line 2478

def update!(**args)
  @acceptable_backlog_per_instance = args[:acceptable_backlog_per_instance] if args.key?(:acceptable_backlog_per_instance)
  @cloud_pub_sub = args[:cloud_pub_sub] if args.key?(:cloud_pub_sub)
  @single_worker_throughput_per_sec = args[:single_worker_throughput_per_sec] if args.key?(:single_worker_throughput_per_sec)
end