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



2041
2042
2043
# File 'generated/google/apis/compute_alpha/classes.rb', line 2041

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)


2027
2028
2029
# File 'generated/google/apis/compute_alpha/classes.rb', line 2027

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



2032
2033
2034
# File 'generated/google/apis/compute_alpha/classes.rb', line 2032

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)


2039
2040
2041
# File 'generated/google/apis/compute_alpha/classes.rb', line 2039

def single_worker_throughput_per_sec
  @single_worker_throughput_per_sec
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2046
2047
2048
2049
2050
# File 'generated/google/apis/compute_alpha/classes.rb', line 2046

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