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



2071
2072
2073
# File 'generated/google/apis/compute_alpha/classes.rb', line 2071

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)


2057
2058
2059
# File 'generated/google/apis/compute_alpha/classes.rb', line 2057

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



2062
2063
2064
# File 'generated/google/apis/compute_alpha/classes.rb', line 2062

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)


2069
2070
2071
# File 'generated/google/apis/compute_alpha/classes.rb', line 2069

def single_worker_throughput_per_sec
  @single_worker_throughput_per_sec
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2076
2077
2078
2079
2080
# File 'generated/google/apis/compute_alpha/classes.rb', line 2076

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