Class: Google::Apis::SpannerV1::AutoscalingConfig

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

Overview

Autoscaling configuration for an instance.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ AutoscalingConfig

Returns a new instance of AutoscalingConfig.



83
84
85
# File 'lib/google/apis/spanner_v1/classes.rb', line 83

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

Instance Attribute Details

#asymmetric_autoscaling_optionsArray<Google::Apis::SpannerV1::AsymmetricAutoscalingOption>

Optional. Optional asymmetric autoscaling options. Replicas matching the replica selection criteria will be autoscaled independently from other replicas. The autoscaler will scale the replicas based on the utilization of replicas identified by the replica selection. Replica selections should not overlap with each other. Other replicas (those do not match any replica selection) will be autoscaled together and will have the same compute capacity allocated to them. Corresponds to the JSON property asymmetricAutoscalingOptions



67
68
69
# File 'lib/google/apis/spanner_v1/classes.rb', line 67

def asymmetric_autoscaling_options
  @asymmetric_autoscaling_options
end

#autoscaling_limitsGoogle::Apis::SpannerV1::AutoscalingLimits

The autoscaling limits for the instance. Users can define the minimum and maximum compute capacity allocated to the instance, and the autoscaler will only scale within that range. Users can either use nodes or processing units to specify the limits, but should use the same unit to set both the min_limit and max_limit. Corresponds to the JSON property autoscalingLimits



76
77
78
# File 'lib/google/apis/spanner_v1/classes.rb', line 76

def autoscaling_limits
  @autoscaling_limits
end

#autoscaling_targetsGoogle::Apis::SpannerV1::AutoscalingTargets

The autoscaling targets for an instance. Corresponds to the JSON property autoscalingTargets



81
82
83
# File 'lib/google/apis/spanner_v1/classes.rb', line 81

def autoscaling_targets
  @autoscaling_targets
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



88
89
90
91
92
# File 'lib/google/apis/spanner_v1/classes.rb', line 88

def update!(**args)
  @asymmetric_autoscaling_options = args[:asymmetric_autoscaling_options] if args.key?(:asymmetric_autoscaling_options)
  @autoscaling_limits = args[:autoscaling_limits] if args.key?(:autoscaling_limits)
  @autoscaling_targets = args[:autoscaling_targets] if args.key?(:autoscaling_targets)
end