Class: Google::Cloud::Compute::V1::Backend

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/compute/v1/compute.rb

Overview

Message containing information of one individual backend.

Defined Under Namespace

Modules: BalancingMode, Preference, TrafficDuration

Instance Attribute Summary collapse

Instance Attribute Details

#balancing_mode ⇒ ::String

Returns Specifies how to determine whether the backend of a load balancer can handle additional traffic or is fully loaded. For usage guidelines, see Connection balancing mode.

Backends must use compatible balancing modes. Backends of a backend service may use different balancing modes. For more information, see Supported balancing modes and target capacity settings and Restrictions and guidance for instance groups.

Note: Currently, if you use the API to configure incompatible balancing modes, the configuration might be accepted even though it has no impact and is ignored. Specifically, Backend.maxUtilization is ignored when Backend.balancingMode is RATE. In the future, this incompatible combination will be rejected. Check the BalancingMode enum for the list of possible values.

Returns:

  • (::String) —

    Specifies how to determine whether the backend of a load balancer can handle additional traffic or is fully loaded. For usage guidelines, see Connection balancing mode.

    Backends must use compatible balancing modes. Backends of a backend service may use different balancing modes. For more information, see Supported balancing modes and target capacity settings and Restrictions and guidance for instance groups.

    Note: Currently, if you use the API to configure incompatible balancing modes, the configuration might be accepted even though it has no impact and is ignored. Specifically, Backend.maxUtilization is ignored when Backend.balancingMode is RATE. In the future, this incompatible combination will be rejected. Check the BalancingMode enum for the list of possible values.



9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 9844

class Backend
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies how to determine whether the backend of a load balancer can
  # handle additional traffic or is fully loaded. For usage guidelines, see
  # Connection balancing mode.
  #
  # Backends must use compatible balancing modes. Backends of a backend
  # service may use different balancing modes. For more information, see
  # Supported balancing modes and target capacity settings and
  # Restrictions and guidance for instance groups.
  #
  # Note: Currently, if you use the API to configure incompatible balancing
  # modes, the configuration might be accepted even though it has no impact
  # and is ignored. Specifically, Backend.maxUtilization is ignored when
  # Backend.balancingMode is RATE. In the future, this incompatible combination
  # will be rejected.
  module BalancingMode
    # A value indicating that the enum field is not set.
    UNDEFINED_BALANCING_MODE = 0

    # Balance based on the number of simultaneous connections.
    CONNECTION = 246_311_646

    # Based on custom defined and reported metrics.
    CUSTOM_METRICS = 331_575_765

    # Balance based on the number of in-flight requests.
    IN_FLIGHT = 190_040_266

    # Balance based on requests per second (RPS).
    RATE = 2_508_000

    # Balance based on the backend utilization.
    UTILIZATION = 157_008_386
  end

  # This field indicates whether this backend should be fully utilized before
  # sending traffic to backends with default preference. The possible values
  # are:
  #
  #    - PREFERRED: Backends with this preference level will be
  #    filled up to their capacity limits first, based on RTT.
  #    - DEFAULT:  If preferred backends don't have enough
  #    capacity, backends in this layer would be used and traffic would be
  #    assigned based on the load balancing algorithm you use. This is the
  #    default
  #
  #
  #
  # For global external Passthrough Network Load Balancers, the following
  # restrictions apply:
  #
  #    - At most one backend can be marked as PREFERRED.
  #    - PREFERRED and DEFAULT backends cannot reside
  #    in the same Cloud region.
  module Preference
    # A value indicating that the enum field is not set.
    UNDEFINED_PREFERENCE = 0

    # No preference.
    DEFAULT = 115_302_945

    # If preference is unspecified, we set it to the DEFAULT value
    PREFERENCE_UNSPECIFIED = 496_219_571

    # Traffic will be sent to this backend first.
    PREFERRED = 418_847_841
  end

  module TrafficDuration
    # A value indicating that the enum field is not set.
    UNDEFINED_TRAFFIC_DURATION = 0

    # Most of the requests are expected to take more than multiple seconds to
    # finish.
    LONG = 2_342_524

    # Most requests are expected to finish with a sub-second latency.
    SHORT = 78_875_740

    # Traffic duration is unspecified.
    TRAFFIC_DURATION_UNSPECIFIED = 265_201_166
  end
end

#capacity_scaler ⇒ ::Float

Returns A multiplier applied to the backend's target capacity of its balancing mode. The default value is 1, which means the group serves up to 100% of its configured capacity (depending onbalancingMode). A setting of 0 means the group is completely drained, offering 0% of its available capacity. The valid ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and smaller than0.1. You cannot configure a setting of 0 when there is only one backend attached to the backend service.

Not available with backends that don't support using abalancingMode. This includes backends such as global internet NEGs, regional serverless NEGs, and PSC NEGs.

Returns:

  • (::Float) —

    A multiplier applied to the backend's target capacity of its balancing mode. The default value is 1, which means the group serves up to 100% of its configured capacity (depending onbalancingMode). A setting of 0 means the group is completely drained, offering 0% of its available capacity. The valid ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and smaller than0.1. You cannot configure a setting of 0 when there is only one backend attached to the backend service.

    Not available with backends that don't support using abalancingMode. This includes backends such as global internet NEGs, regional serverless NEGs, and PSC NEGs.



9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 9844

class Backend
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies how to determine whether the backend of a load balancer can
  # handle additional traffic or is fully loaded. For usage guidelines, see
  # Connection balancing mode.
  #
  # Backends must use compatible balancing modes. Backends of a backend
  # service may use different balancing modes. For more information, see
  # Supported balancing modes and target capacity settings and
  # Restrictions and guidance for instance groups.
  #
  # Note: Currently, if you use the API to configure incompatible balancing
  # modes, the configuration might be accepted even though it has no impact
  # and is ignored. Specifically, Backend.maxUtilization is ignored when
  # Backend.balancingMode is RATE. In the future, this incompatible combination
  # will be rejected.
  module BalancingMode
    # A value indicating that the enum field is not set.
    UNDEFINED_BALANCING_MODE = 0

    # Balance based on the number of simultaneous connections.
    CONNECTION = 246_311_646

    # Based on custom defined and reported metrics.
    CUSTOM_METRICS = 331_575_765

    # Balance based on the number of in-flight requests.
    IN_FLIGHT = 190_040_266

    # Balance based on requests per second (RPS).
    RATE = 2_508_000

    # Balance based on the backend utilization.
    UTILIZATION = 157_008_386
  end

  # This field indicates whether this backend should be fully utilized before
  # sending traffic to backends with default preference. The possible values
  # are:
  #
  #    - PREFERRED: Backends with this preference level will be
  #    filled up to their capacity limits first, based on RTT.
  #    - DEFAULT:  If preferred backends don't have enough
  #    capacity, backends in this layer would be used and traffic would be
  #    assigned based on the load balancing algorithm you use. This is the
  #    default
  #
  #
  #
  # For global external Passthrough Network Load Balancers, the following
  # restrictions apply:
  #
  #    - At most one backend can be marked as PREFERRED.
  #    - PREFERRED and DEFAULT backends cannot reside
  #    in the same Cloud region.
  module Preference
    # A value indicating that the enum field is not set.
    UNDEFINED_PREFERENCE = 0

    # No preference.
    DEFAULT = 115_302_945

    # If preference is unspecified, we set it to the DEFAULT value
    PREFERENCE_UNSPECIFIED = 496_219_571

    # Traffic will be sent to this backend first.
    PREFERRED = 418_847_841
  end

  module TrafficDuration
    # A value indicating that the enum field is not set.
    UNDEFINED_TRAFFIC_DURATION = 0

    # Most of the requests are expected to take more than multiple seconds to
    # finish.
    LONG = 2_342_524

    # Most requests are expected to finish with a sub-second latency.
    SHORT = 78_875_740

    # Traffic duration is unspecified.
    TRAFFIC_DURATION_UNSPECIFIED = 265_201_166
  end
end

#custom_metrics ⇒ ::Array<::Google::Cloud::Compute::V1::BackendCustomMetric>

Returns List of custom metrics that are used for CUSTOM_METRICS BalancingMode.

Returns:



9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 9844

class Backend
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies how to determine whether the backend of a load balancer can
  # handle additional traffic or is fully loaded. For usage guidelines, see
  # Connection balancing mode.
  #
  # Backends must use compatible balancing modes. Backends of a backend
  # service may use different balancing modes. For more information, see
  # Supported balancing modes and target capacity settings and
  # Restrictions and guidance for instance groups.
  #
  # Note: Currently, if you use the API to configure incompatible balancing
  # modes, the configuration might be accepted even though it has no impact
  # and is ignored. Specifically, Backend.maxUtilization is ignored when
  # Backend.balancingMode is RATE. In the future, this incompatible combination
  # will be rejected.
  module BalancingMode
    # A value indicating that the enum field is not set.
    UNDEFINED_BALANCING_MODE = 0

    # Balance based on the number of simultaneous connections.
    CONNECTION = 246_311_646

    # Based on custom defined and reported metrics.
    CUSTOM_METRICS = 331_575_765

    # Balance based on the number of in-flight requests.
    IN_FLIGHT = 190_040_266

    # Balance based on requests per second (RPS).
    RATE = 2_508_000

    # Balance based on the backend utilization.
    UTILIZATION = 157_008_386
  end

  # This field indicates whether this backend should be fully utilized before
  # sending traffic to backends with default preference. The possible values
  # are:
  #
  #    - PREFERRED: Backends with this preference level will be
  #    filled up to their capacity limits first, based on RTT.
  #    - DEFAULT:  If preferred backends don't have enough
  #    capacity, backends in this layer would be used and traffic would be
  #    assigned based on the load balancing algorithm you use. This is the
  #    default
  #
  #
  #
  # For global external Passthrough Network Load Balancers, the following
  # restrictions apply:
  #
  #    - At most one backend can be marked as PREFERRED.
  #    - PREFERRED and DEFAULT backends cannot reside
  #    in the same Cloud region.
  module Preference
    # A value indicating that the enum field is not set.
    UNDEFINED_PREFERENCE = 0

    # No preference.
    DEFAULT = 115_302_945

    # If preference is unspecified, we set it to the DEFAULT value
    PREFERENCE_UNSPECIFIED = 496_219_571

    # Traffic will be sent to this backend first.
    PREFERRED = 418_847_841
  end

  module TrafficDuration
    # A value indicating that the enum field is not set.
    UNDEFINED_TRAFFIC_DURATION = 0

    # Most of the requests are expected to take more than multiple seconds to
    # finish.
    LONG = 2_342_524

    # Most requests are expected to finish with a sub-second latency.
    SHORT = 78_875_740

    # Traffic duration is unspecified.
    TRAFFIC_DURATION_UNSPECIFIED = 265_201_166
  end
end

#description ⇒ ::String

Returns An optional description of this resource. Provide this property when you create the resource.

Returns:

  • (::String) —

    An optional description of this resource. Provide this property when you create the resource.



9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 9844

class Backend
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies how to determine whether the backend of a load balancer can
  # handle additional traffic or is fully loaded. For usage guidelines, see
  # Connection balancing mode.
  #
  # Backends must use compatible balancing modes. Backends of a backend
  # service may use different balancing modes. For more information, see
  # Supported balancing modes and target capacity settings and
  # Restrictions and guidance for instance groups.
  #
  # Note: Currently, if you use the API to configure incompatible balancing
  # modes, the configuration might be accepted even though it has no impact
  # and is ignored. Specifically, Backend.maxUtilization is ignored when
  # Backend.balancingMode is RATE. In the future, this incompatible combination
  # will be rejected.
  module BalancingMode
    # A value indicating that the enum field is not set.
    UNDEFINED_BALANCING_MODE = 0

    # Balance based on the number of simultaneous connections.
    CONNECTION = 246_311_646

    # Based on custom defined and reported metrics.
    CUSTOM_METRICS = 331_575_765

    # Balance based on the number of in-flight requests.
    IN_FLIGHT = 190_040_266

    # Balance based on requests per second (RPS).
    RATE = 2_508_000

    # Balance based on the backend utilization.
    UTILIZATION = 157_008_386
  end

  # This field indicates whether this backend should be fully utilized before
  # sending traffic to backends with default preference. The possible values
  # are:
  #
  #    - PREFERRED: Backends with this preference level will be
  #    filled up to their capacity limits first, based on RTT.
  #    - DEFAULT:  If preferred backends don't have enough
  #    capacity, backends in this layer would be used and traffic would be
  #    assigned based on the load balancing algorithm you use. This is the
  #    default
  #
  #
  #
  # For global external Passthrough Network Load Balancers, the following
  # restrictions apply:
  #
  #    - At most one backend can be marked as PREFERRED.
  #    - PREFERRED and DEFAULT backends cannot reside
  #    in the same Cloud region.
  module Preference
    # A value indicating that the enum field is not set.
    UNDEFINED_PREFERENCE = 0

    # No preference.
    DEFAULT = 115_302_945

    # If preference is unspecified, we set it to the DEFAULT value
    PREFERENCE_UNSPECIFIED = 496_219_571

    # Traffic will be sent to this backend first.
    PREFERRED = 418_847_841
  end

  module TrafficDuration
    # A value indicating that the enum field is not set.
    UNDEFINED_TRAFFIC_DURATION = 0

    # Most of the requests are expected to take more than multiple seconds to
    # finish.
    LONG = 2_342_524

    # Most requests are expected to finish with a sub-second latency.
    SHORT = 78_875_740

    # Traffic duration is unspecified.
    TRAFFIC_DURATION_UNSPECIFIED = 265_201_166
  end
end

#failover ⇒ ::Boolean

Returns This field designates whether this is a failover backend. More than one failover backend can be configured for a given BackendService.

This field can only be used for a regional external Passthrough Network Load Balancer or a regional internal Passthrough Network Load Balancer.

Returns:

  • (::Boolean) —

    This field designates whether this is a failover backend. More than one failover backend can be configured for a given BackendService.

    This field can only be used for a regional external Passthrough Network Load Balancer or a regional internal Passthrough Network Load Balancer.



9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 9844

class Backend
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies how to determine whether the backend of a load balancer can
  # handle additional traffic or is fully loaded. For usage guidelines, see
  # Connection balancing mode.
  #
  # Backends must use compatible balancing modes. Backends of a backend
  # service may use different balancing modes. For more information, see
  # Supported balancing modes and target capacity settings and
  # Restrictions and guidance for instance groups.
  #
  # Note: Currently, if you use the API to configure incompatible balancing
  # modes, the configuration might be accepted even though it has no impact
  # and is ignored. Specifically, Backend.maxUtilization is ignored when
  # Backend.balancingMode is RATE. In the future, this incompatible combination
  # will be rejected.
  module BalancingMode
    # A value indicating that the enum field is not set.
    UNDEFINED_BALANCING_MODE = 0

    # Balance based on the number of simultaneous connections.
    CONNECTION = 246_311_646

    # Based on custom defined and reported metrics.
    CUSTOM_METRICS = 331_575_765

    # Balance based on the number of in-flight requests.
    IN_FLIGHT = 190_040_266

    # Balance based on requests per second (RPS).
    RATE = 2_508_000

    # Balance based on the backend utilization.
    UTILIZATION = 157_008_386
  end

  # This field indicates whether this backend should be fully utilized before
  # sending traffic to backends with default preference. The possible values
  # are:
  #
  #    - PREFERRED: Backends with this preference level will be
  #    filled up to their capacity limits first, based on RTT.
  #    - DEFAULT:  If preferred backends don't have enough
  #    capacity, backends in this layer would be used and traffic would be
  #    assigned based on the load balancing algorithm you use. This is the
  #    default
  #
  #
  #
  # For global external Passthrough Network Load Balancers, the following
  # restrictions apply:
  #
  #    - At most one backend can be marked as PREFERRED.
  #    - PREFERRED and DEFAULT backends cannot reside
  #    in the same Cloud region.
  module Preference
    # A value indicating that the enum field is not set.
    UNDEFINED_PREFERENCE = 0

    # No preference.
    DEFAULT = 115_302_945

    # If preference is unspecified, we set it to the DEFAULT value
    PREFERENCE_UNSPECIFIED = 496_219_571

    # Traffic will be sent to this backend first.
    PREFERRED = 418_847_841
  end

  module TrafficDuration
    # A value indicating that the enum field is not set.
    UNDEFINED_TRAFFIC_DURATION = 0

    # Most of the requests are expected to take more than multiple seconds to
    # finish.
    LONG = 2_342_524

    # Most requests are expected to finish with a sub-second latency.
    SHORT = 78_875_740

    # Traffic duration is unspecified.
    TRAFFIC_DURATION_UNSPECIFIED = 265_201_166
  end
end

#group ⇒ ::String

Returns The fully-qualified URL of aninstance group or network endpoint group (NEG) resource. To determine what types of backends a load balancer supports, see the Backend services overview.

You must use the fully-qualified URL (starting withhttps://www.googleapis.com/) to specify the instance group or NEG. Partial URLs are not supported.

If haPolicy is specified, backends must refer to NEG resources of type GCE_VM_IP.

Returns:

  • (::String) —

    The fully-qualified URL of aninstance group or network endpoint group (NEG) resource. To determine what types of backends a load balancer supports, see the Backend services overview.

    You must use the fully-qualified URL (starting withhttps://www.googleapis.com/) to specify the instance group or NEG. Partial URLs are not supported.

    If haPolicy is specified, backends must refer to NEG resources of type GCE_VM_IP.



9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 9844

class Backend
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies how to determine whether the backend of a load balancer can
  # handle additional traffic or is fully loaded. For usage guidelines, see
  # Connection balancing mode.
  #
  # Backends must use compatible balancing modes. Backends of a backend
  # service may use different balancing modes. For more information, see
  # Supported balancing modes and target capacity settings and
  # Restrictions and guidance for instance groups.
  #
  # Note: Currently, if you use the API to configure incompatible balancing
  # modes, the configuration might be accepted even though it has no impact
  # and is ignored. Specifically, Backend.maxUtilization is ignored when
  # Backend.balancingMode is RATE. In the future, this incompatible combination
  # will be rejected.
  module BalancingMode
    # A value indicating that the enum field is not set.
    UNDEFINED_BALANCING_MODE = 0

    # Balance based on the number of simultaneous connections.
    CONNECTION = 246_311_646

    # Based on custom defined and reported metrics.
    CUSTOM_METRICS = 331_575_765

    # Balance based on the number of in-flight requests.
    IN_FLIGHT = 190_040_266

    # Balance based on requests per second (RPS).
    RATE = 2_508_000

    # Balance based on the backend utilization.
    UTILIZATION = 157_008_386
  end

  # This field indicates whether this backend should be fully utilized before
  # sending traffic to backends with default preference. The possible values
  # are:
  #
  #    - PREFERRED: Backends with this preference level will be
  #    filled up to their capacity limits first, based on RTT.
  #    - DEFAULT:  If preferred backends don't have enough
  #    capacity, backends in this layer would be used and traffic would be
  #    assigned based on the load balancing algorithm you use. This is the
  #    default
  #
  #
  #
  # For global external Passthrough Network Load Balancers, the following
  # restrictions apply:
  #
  #    - At most one backend can be marked as PREFERRED.
  #    - PREFERRED and DEFAULT backends cannot reside
  #    in the same Cloud region.
  module Preference
    # A value indicating that the enum field is not set.
    UNDEFINED_PREFERENCE = 0

    # No preference.
    DEFAULT = 115_302_945

    # If preference is unspecified, we set it to the DEFAULT value
    PREFERENCE_UNSPECIFIED = 496_219_571

    # Traffic will be sent to this backend first.
    PREFERRED = 418_847_841
  end

  module TrafficDuration
    # A value indicating that the enum field is not set.
    UNDEFINED_TRAFFIC_DURATION = 0

    # Most of the requests are expected to take more than multiple seconds to
    # finish.
    LONG = 2_342_524

    # Most requests are expected to finish with a sub-second latency.
    SHORT = 78_875_740

    # Traffic duration is unspecified.
    TRAFFIC_DURATION_UNSPECIFIED = 265_201_166
  end
end

#max_connections ⇒ ::Integer

Returns Defines a target maximum number of simultaneous connections. For usage guidelines, seeConnection balancing mode and Utilization balancing mode. Not available if the backend'sbalancingMode is RATE.

Returns:

  • (::Integer) —

    Defines a target maximum number of simultaneous connections. For usage guidelines, seeConnection balancing mode and Utilization balancing mode. Not available if the backend'sbalancingMode is RATE.



9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 9844

class Backend
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies how to determine whether the backend of a load balancer can
  # handle additional traffic or is fully loaded. For usage guidelines, see
  # Connection balancing mode.
  #
  # Backends must use compatible balancing modes. Backends of a backend
  # service may use different balancing modes. For more information, see
  # Supported balancing modes and target capacity settings and
  # Restrictions and guidance for instance groups.
  #
  # Note: Currently, if you use the API to configure incompatible balancing
  # modes, the configuration might be accepted even though it has no impact
  # and is ignored. Specifically, Backend.maxUtilization is ignored when
  # Backend.balancingMode is RATE. In the future, this incompatible combination
  # will be rejected.
  module BalancingMode
    # A value indicating that the enum field is not set.
    UNDEFINED_BALANCING_MODE = 0

    # Balance based on the number of simultaneous connections.
    CONNECTION = 246_311_646

    # Based on custom defined and reported metrics.
    CUSTOM_METRICS = 331_575_765

    # Balance based on the number of in-flight requests.
    IN_FLIGHT = 190_040_266

    # Balance based on requests per second (RPS).
    RATE = 2_508_000

    # Balance based on the backend utilization.
    UTILIZATION = 157_008_386
  end

  # This field indicates whether this backend should be fully utilized before
  # sending traffic to backends with default preference. The possible values
  # are:
  #
  #    - PREFERRED: Backends with this preference level will be
  #    filled up to their capacity limits first, based on RTT.
  #    - DEFAULT:  If preferred backends don't have enough
  #    capacity, backends in this layer would be used and traffic would be
  #    assigned based on the load balancing algorithm you use. This is the
  #    default
  #
  #
  #
  # For global external Passthrough Network Load Balancers, the following
  # restrictions apply:
  #
  #    - At most one backend can be marked as PREFERRED.
  #    - PREFERRED and DEFAULT backends cannot reside
  #    in the same Cloud region.
  module Preference
    # A value indicating that the enum field is not set.
    UNDEFINED_PREFERENCE = 0

    # No preference.
    DEFAULT = 115_302_945

    # If preference is unspecified, we set it to the DEFAULT value
    PREFERENCE_UNSPECIFIED = 496_219_571

    # Traffic will be sent to this backend first.
    PREFERRED = 418_847_841
  end

  module TrafficDuration
    # A value indicating that the enum field is not set.
    UNDEFINED_TRAFFIC_DURATION = 0

    # Most of the requests are expected to take more than multiple seconds to
    # finish.
    LONG = 2_342_524

    # Most requests are expected to finish with a sub-second latency.
    SHORT = 78_875_740

    # Traffic duration is unspecified.
    TRAFFIC_DURATION_UNSPECIFIED = 265_201_166
  end
end

#max_connections_per_endpoint ⇒ ::Integer

Returns Defines a target maximum number of simultaneous connections. For usage guidelines, seeConnection balancing mode and Utilization balancing mode.

Not available if the backend's balancingMode isRATE.

Returns:

  • (::Integer) —

    Defines a target maximum number of simultaneous connections. For usage guidelines, seeConnection balancing mode and Utilization balancing mode.

    Not available if the backend's balancingMode isRATE.



9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 9844

class Backend
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies how to determine whether the backend of a load balancer can
  # handle additional traffic or is fully loaded. For usage guidelines, see
  # Connection balancing mode.
  #
  # Backends must use compatible balancing modes. Backends of a backend
  # service may use different balancing modes. For more information, see
  # Supported balancing modes and target capacity settings and
  # Restrictions and guidance for instance groups.
  #
  # Note: Currently, if you use the API to configure incompatible balancing
  # modes, the configuration might be accepted even though it has no impact
  # and is ignored. Specifically, Backend.maxUtilization is ignored when
  # Backend.balancingMode is RATE. In the future, this incompatible combination
  # will be rejected.
  module BalancingMode
    # A value indicating that the enum field is not set.
    UNDEFINED_BALANCING_MODE = 0

    # Balance based on the number of simultaneous connections.
    CONNECTION = 246_311_646

    # Based on custom defined and reported metrics.
    CUSTOM_METRICS = 331_575_765

    # Balance based on the number of in-flight requests.
    IN_FLIGHT = 190_040_266

    # Balance based on requests per second (RPS).
    RATE = 2_508_000

    # Balance based on the backend utilization.
    UTILIZATION = 157_008_386
  end

  # This field indicates whether this backend should be fully utilized before
  # sending traffic to backends with default preference. The possible values
  # are:
  #
  #    - PREFERRED: Backends with this preference level will be
  #    filled up to their capacity limits first, based on RTT.
  #    - DEFAULT:  If preferred backends don't have enough
  #    capacity, backends in this layer would be used and traffic would be
  #    assigned based on the load balancing algorithm you use. This is the
  #    default
  #
  #
  #
  # For global external Passthrough Network Load Balancers, the following
  # restrictions apply:
  #
  #    - At most one backend can be marked as PREFERRED.
  #    - PREFERRED and DEFAULT backends cannot reside
  #    in the same Cloud region.
  module Preference
    # A value indicating that the enum field is not set.
    UNDEFINED_PREFERENCE = 0

    # No preference.
    DEFAULT = 115_302_945

    # If preference is unspecified, we set it to the DEFAULT value
    PREFERENCE_UNSPECIFIED = 496_219_571

    # Traffic will be sent to this backend first.
    PREFERRED = 418_847_841
  end

  module TrafficDuration
    # A value indicating that the enum field is not set.
    UNDEFINED_TRAFFIC_DURATION = 0

    # Most of the requests are expected to take more than multiple seconds to
    # finish.
    LONG = 2_342_524

    # Most requests are expected to finish with a sub-second latency.
    SHORT = 78_875_740

    # Traffic duration is unspecified.
    TRAFFIC_DURATION_UNSPECIFIED = 265_201_166
  end
end

#max_connections_per_instance ⇒ ::Integer

Returns Defines a target maximum number of simultaneous connections. For usage guidelines, seeConnection balancing mode and Utilization balancing mode.

Not available if the backend's balancingMode isRATE.

Returns:

  • (::Integer) —

    Defines a target maximum number of simultaneous connections. For usage guidelines, seeConnection balancing mode and Utilization balancing mode.

    Not available if the backend's balancingMode isRATE.



9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 9844

class Backend
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies how to determine whether the backend of a load balancer can
  # handle additional traffic or is fully loaded. For usage guidelines, see
  # Connection balancing mode.
  #
  # Backends must use compatible balancing modes. Backends of a backend
  # service may use different balancing modes. For more information, see
  # Supported balancing modes and target capacity settings and
  # Restrictions and guidance for instance groups.
  #
  # Note: Currently, if you use the API to configure incompatible balancing
  # modes, the configuration might be accepted even though it has no impact
  # and is ignored. Specifically, Backend.maxUtilization is ignored when
  # Backend.balancingMode is RATE. In the future, this incompatible combination
  # will be rejected.
  module BalancingMode
    # A value indicating that the enum field is not set.
    UNDEFINED_BALANCING_MODE = 0

    # Balance based on the number of simultaneous connections.
    CONNECTION = 246_311_646

    # Based on custom defined and reported metrics.
    CUSTOM_METRICS = 331_575_765

    # Balance based on the number of in-flight requests.
    IN_FLIGHT = 190_040_266

    # Balance based on requests per second (RPS).
    RATE = 2_508_000

    # Balance based on the backend utilization.
    UTILIZATION = 157_008_386
  end

  # This field indicates whether this backend should be fully utilized before
  # sending traffic to backends with default preference. The possible values
  # are:
  #
  #    - PREFERRED: Backends with this preference level will be
  #    filled up to their capacity limits first, based on RTT.
  #    - DEFAULT:  If preferred backends don't have enough
  #    capacity, backends in this layer would be used and traffic would be
  #    assigned based on the load balancing algorithm you use. This is the
  #    default
  #
  #
  #
  # For global external Passthrough Network Load Balancers, the following
  # restrictions apply:
  #
  #    - At most one backend can be marked as PREFERRED.
  #    - PREFERRED and DEFAULT backends cannot reside
  #    in the same Cloud region.
  module Preference
    # A value indicating that the enum field is not set.
    UNDEFINED_PREFERENCE = 0

    # No preference.
    DEFAULT = 115_302_945

    # If preference is unspecified, we set it to the DEFAULT value
    PREFERENCE_UNSPECIFIED = 496_219_571

    # Traffic will be sent to this backend first.
    PREFERRED = 418_847_841
  end

  module TrafficDuration
    # A value indicating that the enum field is not set.
    UNDEFINED_TRAFFIC_DURATION = 0

    # Most of the requests are expected to take more than multiple seconds to
    # finish.
    LONG = 2_342_524

    # Most requests are expected to finish with a sub-second latency.
    SHORT = 78_875_740

    # Traffic duration is unspecified.
    TRAFFIC_DURATION_UNSPECIFIED = 265_201_166
  end
end

#max_in_flight_requests ⇒ ::Integer

Returns Defines a maximum number of in-flight requests for the whole NEG or instance group. Not available if backend's balancingMode isRATE or CONNECTION.

Returns:

  • (::Integer) —

    Defines a maximum number of in-flight requests for the whole NEG or instance group. Not available if backend's balancingMode isRATE or CONNECTION.



9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 9844

class Backend
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies how to determine whether the backend of a load balancer can
  # handle additional traffic or is fully loaded. For usage guidelines, see
  # Connection balancing mode.
  #
  # Backends must use compatible balancing modes. Backends of a backend
  # service may use different balancing modes. For more information, see
  # Supported balancing modes and target capacity settings and
  # Restrictions and guidance for instance groups.
  #
  # Note: Currently, if you use the API to configure incompatible balancing
  # modes, the configuration might be accepted even though it has no impact
  # and is ignored. Specifically, Backend.maxUtilization is ignored when
  # Backend.balancingMode is RATE. In the future, this incompatible combination
  # will be rejected.
  module BalancingMode
    # A value indicating that the enum field is not set.
    UNDEFINED_BALANCING_MODE = 0

    # Balance based on the number of simultaneous connections.
    CONNECTION = 246_311_646

    # Based on custom defined and reported metrics.
    CUSTOM_METRICS = 331_575_765

    # Balance based on the number of in-flight requests.
    IN_FLIGHT = 190_040_266

    # Balance based on requests per second (RPS).
    RATE = 2_508_000

    # Balance based on the backend utilization.
    UTILIZATION = 157_008_386
  end

  # This field indicates whether this backend should be fully utilized before
  # sending traffic to backends with default preference. The possible values
  # are:
  #
  #    - PREFERRED: Backends with this preference level will be
  #    filled up to their capacity limits first, based on RTT.
  #    - DEFAULT:  If preferred backends don't have enough
  #    capacity, backends in this layer would be used and traffic would be
  #    assigned based on the load balancing algorithm you use. This is the
  #    default
  #
  #
  #
  # For global external Passthrough Network Load Balancers, the following
  # restrictions apply:
  #
  #    - At most one backend can be marked as PREFERRED.
  #    - PREFERRED and DEFAULT backends cannot reside
  #    in the same Cloud region.
  module Preference
    # A value indicating that the enum field is not set.
    UNDEFINED_PREFERENCE = 0

    # No preference.
    DEFAULT = 115_302_945

    # If preference is unspecified, we set it to the DEFAULT value
    PREFERENCE_UNSPECIFIED = 496_219_571

    # Traffic will be sent to this backend first.
    PREFERRED = 418_847_841
  end

  module TrafficDuration
    # A value indicating that the enum field is not set.
    UNDEFINED_TRAFFIC_DURATION = 0

    # Most of the requests are expected to take more than multiple seconds to
    # finish.
    LONG = 2_342_524

    # Most requests are expected to finish with a sub-second latency.
    SHORT = 78_875_740

    # Traffic duration is unspecified.
    TRAFFIC_DURATION_UNSPECIFIED = 265_201_166
  end
end

#max_in_flight_requests_per_endpoint ⇒ ::Integer

Returns Defines a maximum number of in-flight requests for a single endpoint. Not available if backend's balancingMode is RATE or CONNECTION.

Returns:

  • (::Integer) —

    Defines a maximum number of in-flight requests for a single endpoint. Not available if backend's balancingMode is RATE or CONNECTION.



9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 9844

class Backend
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies how to determine whether the backend of a load balancer can
  # handle additional traffic or is fully loaded. For usage guidelines, see
  # Connection balancing mode.
  #
  # Backends must use compatible balancing modes. Backends of a backend
  # service may use different balancing modes. For more information, see
  # Supported balancing modes and target capacity settings and
  # Restrictions and guidance for instance groups.
  #
  # Note: Currently, if you use the API to configure incompatible balancing
  # modes, the configuration might be accepted even though it has no impact
  # and is ignored. Specifically, Backend.maxUtilization is ignored when
  # Backend.balancingMode is RATE. In the future, this incompatible combination
  # will be rejected.
  module BalancingMode
    # A value indicating that the enum field is not set.
    UNDEFINED_BALANCING_MODE = 0

    # Balance based on the number of simultaneous connections.
    CONNECTION = 246_311_646

    # Based on custom defined and reported metrics.
    CUSTOM_METRICS = 331_575_765

    # Balance based on the number of in-flight requests.
    IN_FLIGHT = 190_040_266

    # Balance based on requests per second (RPS).
    RATE = 2_508_000

    # Balance based on the backend utilization.
    UTILIZATION = 157_008_386
  end

  # This field indicates whether this backend should be fully utilized before
  # sending traffic to backends with default preference. The possible values
  # are:
  #
  #    - PREFERRED: Backends with this preference level will be
  #    filled up to their capacity limits first, based on RTT.
  #    - DEFAULT:  If preferred backends don't have enough
  #    capacity, backends in this layer would be used and traffic would be
  #    assigned based on the load balancing algorithm you use. This is the
  #    default
  #
  #
  #
  # For global external Passthrough Network Load Balancers, the following
  # restrictions apply:
  #
  #    - At most one backend can be marked as PREFERRED.
  #    - PREFERRED and DEFAULT backends cannot reside
  #    in the same Cloud region.
  module Preference
    # A value indicating that the enum field is not set.
    UNDEFINED_PREFERENCE = 0

    # No preference.
    DEFAULT = 115_302_945

    # If preference is unspecified, we set it to the DEFAULT value
    PREFERENCE_UNSPECIFIED = 496_219_571

    # Traffic will be sent to this backend first.
    PREFERRED = 418_847_841
  end

  module TrafficDuration
    # A value indicating that the enum field is not set.
    UNDEFINED_TRAFFIC_DURATION = 0

    # Most of the requests are expected to take more than multiple seconds to
    # finish.
    LONG = 2_342_524

    # Most requests are expected to finish with a sub-second latency.
    SHORT = 78_875_740

    # Traffic duration is unspecified.
    TRAFFIC_DURATION_UNSPECIFIED = 265_201_166
  end
end

#max_in_flight_requests_per_instance ⇒ ::Integer

Returns Defines a maximum number of in-flight requests for a single VM. Not available if backend's balancingMode is RATE or CONNECTION.

Returns:

  • (::Integer) —

    Defines a maximum number of in-flight requests for a single VM. Not available if backend's balancingMode is RATE or CONNECTION.



9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 9844

class Backend
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies how to determine whether the backend of a load balancer can
  # handle additional traffic or is fully loaded. For usage guidelines, see
  # Connection balancing mode.
  #
  # Backends must use compatible balancing modes. Backends of a backend
  # service may use different balancing modes. For more information, see
  # Supported balancing modes and target capacity settings and
  # Restrictions and guidance for instance groups.
  #
  # Note: Currently, if you use the API to configure incompatible balancing
  # modes, the configuration might be accepted even though it has no impact
  # and is ignored. Specifically, Backend.maxUtilization is ignored when
  # Backend.balancingMode is RATE. In the future, this incompatible combination
  # will be rejected.
  module BalancingMode
    # A value indicating that the enum field is not set.
    UNDEFINED_BALANCING_MODE = 0

    # Balance based on the number of simultaneous connections.
    CONNECTION = 246_311_646

    # Based on custom defined and reported metrics.
    CUSTOM_METRICS = 331_575_765

    # Balance based on the number of in-flight requests.
    IN_FLIGHT = 190_040_266

    # Balance based on requests per second (RPS).
    RATE = 2_508_000

    # Balance based on the backend utilization.
    UTILIZATION = 157_008_386
  end

  # This field indicates whether this backend should be fully utilized before
  # sending traffic to backends with default preference. The possible values
  # are:
  #
  #    - PREFERRED: Backends with this preference level will be
  #    filled up to their capacity limits first, based on RTT.
  #    - DEFAULT:  If preferred backends don't have enough
  #    capacity, backends in this layer would be used and traffic would be
  #    assigned based on the load balancing algorithm you use. This is the
  #    default
  #
  #
  #
  # For global external Passthrough Network Load Balancers, the following
  # restrictions apply:
  #
  #    - At most one backend can be marked as PREFERRED.
  #    - PREFERRED and DEFAULT backends cannot reside
  #    in the same Cloud region.
  module Preference
    # A value indicating that the enum field is not set.
    UNDEFINED_PREFERENCE = 0

    # No preference.
    DEFAULT = 115_302_945

    # If preference is unspecified, we set it to the DEFAULT value
    PREFERENCE_UNSPECIFIED = 496_219_571

    # Traffic will be sent to this backend first.
    PREFERRED = 418_847_841
  end

  module TrafficDuration
    # A value indicating that the enum field is not set.
    UNDEFINED_TRAFFIC_DURATION = 0

    # Most of the requests are expected to take more than multiple seconds to
    # finish.
    LONG = 2_342_524

    # Most requests are expected to finish with a sub-second latency.
    SHORT = 78_875_740

    # Traffic duration is unspecified.
    TRAFFIC_DURATION_UNSPECIFIED = 265_201_166
  end
end

#max_rate ⇒ ::Integer

Returns Defines a maximum number of HTTP requests per second (RPS). For usage guidelines, seeRate balancing mode and Utilization balancing mode.

Not available if the backend's balancingMode isCONNECTION.

Returns:

  • (::Integer) —

    Defines a maximum number of HTTP requests per second (RPS). For usage guidelines, seeRate balancing mode and Utilization balancing mode.

    Not available if the backend's balancingMode isCONNECTION.



9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 9844

class Backend
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies how to determine whether the backend of a load balancer can
  # handle additional traffic or is fully loaded. For usage guidelines, see
  # Connection balancing mode.
  #
  # Backends must use compatible balancing modes. Backends of a backend
  # service may use different balancing modes. For more information, see
  # Supported balancing modes and target capacity settings and
  # Restrictions and guidance for instance groups.
  #
  # Note: Currently, if you use the API to configure incompatible balancing
  # modes, the configuration might be accepted even though it has no impact
  # and is ignored. Specifically, Backend.maxUtilization is ignored when
  # Backend.balancingMode is RATE. In the future, this incompatible combination
  # will be rejected.
  module BalancingMode
    # A value indicating that the enum field is not set.
    UNDEFINED_BALANCING_MODE = 0

    # Balance based on the number of simultaneous connections.
    CONNECTION = 246_311_646

    # Based on custom defined and reported metrics.
    CUSTOM_METRICS = 331_575_765

    # Balance based on the number of in-flight requests.
    IN_FLIGHT = 190_040_266

    # Balance based on requests per second (RPS).
    RATE = 2_508_000

    # Balance based on the backend utilization.
    UTILIZATION = 157_008_386
  end

  # This field indicates whether this backend should be fully utilized before
  # sending traffic to backends with default preference. The possible values
  # are:
  #
  #    - PREFERRED: Backends with this preference level will be
  #    filled up to their capacity limits first, based on RTT.
  #    - DEFAULT:  If preferred backends don't have enough
  #    capacity, backends in this layer would be used and traffic would be
  #    assigned based on the load balancing algorithm you use. This is the
  #    default
  #
  #
  #
  # For global external Passthrough Network Load Balancers, the following
  # restrictions apply:
  #
  #    - At most one backend can be marked as PREFERRED.
  #    - PREFERRED and DEFAULT backends cannot reside
  #    in the same Cloud region.
  module Preference
    # A value indicating that the enum field is not set.
    UNDEFINED_PREFERENCE = 0

    # No preference.
    DEFAULT = 115_302_945

    # If preference is unspecified, we set it to the DEFAULT value
    PREFERENCE_UNSPECIFIED = 496_219_571

    # Traffic will be sent to this backend first.
    PREFERRED = 418_847_841
  end

  module TrafficDuration
    # A value indicating that the enum field is not set.
    UNDEFINED_TRAFFIC_DURATION = 0

    # Most of the requests are expected to take more than multiple seconds to
    # finish.
    LONG = 2_342_524

    # Most requests are expected to finish with a sub-second latency.
    SHORT = 78_875_740

    # Traffic duration is unspecified.
    TRAFFIC_DURATION_UNSPECIFIED = 265_201_166
  end
end

#max_rate_per_endpoint ⇒ ::Float

Returns Defines a maximum target for requests per second (RPS). For usage guidelines, seeRate balancing mode and Utilization balancing mode.

Not available if the backend's balancingMode isCONNECTION.

Returns:

  • (::Float) —

    Defines a maximum target for requests per second (RPS). For usage guidelines, seeRate balancing mode and Utilization balancing mode.

    Not available if the backend's balancingMode isCONNECTION.



9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 9844

class Backend
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies how to determine whether the backend of a load balancer can
  # handle additional traffic or is fully loaded. For usage guidelines, see
  # Connection balancing mode.
  #
  # Backends must use compatible balancing modes. Backends of a backend
  # service may use different balancing modes. For more information, see
  # Supported balancing modes and target capacity settings and
  # Restrictions and guidance for instance groups.
  #
  # Note: Currently, if you use the API to configure incompatible balancing
  # modes, the configuration might be accepted even though it has no impact
  # and is ignored. Specifically, Backend.maxUtilization is ignored when
  # Backend.balancingMode is RATE. In the future, this incompatible combination
  # will be rejected.
  module BalancingMode
    # A value indicating that the enum field is not set.
    UNDEFINED_BALANCING_MODE = 0

    # Balance based on the number of simultaneous connections.
    CONNECTION = 246_311_646

    # Based on custom defined and reported metrics.
    CUSTOM_METRICS = 331_575_765

    # Balance based on the number of in-flight requests.
    IN_FLIGHT = 190_040_266

    # Balance based on requests per second (RPS).
    RATE = 2_508_000

    # Balance based on the backend utilization.
    UTILIZATION = 157_008_386
  end

  # This field indicates whether this backend should be fully utilized before
  # sending traffic to backends with default preference. The possible values
  # are:
  #
  #    - PREFERRED: Backends with this preference level will be
  #    filled up to their capacity limits first, based on RTT.
  #    - DEFAULT:  If preferred backends don't have enough
  #    capacity, backends in this layer would be used and traffic would be
  #    assigned based on the load balancing algorithm you use. This is the
  #    default
  #
  #
  #
  # For global external Passthrough Network Load Balancers, the following
  # restrictions apply:
  #
  #    - At most one backend can be marked as PREFERRED.
  #    - PREFERRED and DEFAULT backends cannot reside
  #    in the same Cloud region.
  module Preference
    # A value indicating that the enum field is not set.
    UNDEFINED_PREFERENCE = 0

    # No preference.
    DEFAULT = 115_302_945

    # If preference is unspecified, we set it to the DEFAULT value
    PREFERENCE_UNSPECIFIED = 496_219_571

    # Traffic will be sent to this backend first.
    PREFERRED = 418_847_841
  end

  module TrafficDuration
    # A value indicating that the enum field is not set.
    UNDEFINED_TRAFFIC_DURATION = 0

    # Most of the requests are expected to take more than multiple seconds to
    # finish.
    LONG = 2_342_524

    # Most requests are expected to finish with a sub-second latency.
    SHORT = 78_875_740

    # Traffic duration is unspecified.
    TRAFFIC_DURATION_UNSPECIFIED = 265_201_166
  end
end

#max_rate_per_instance ⇒ ::Float

Returns Defines a maximum target for requests per second (RPS). For usage guidelines, seeRate balancing mode and Utilization balancing mode.

Not available if the backend's balancingMode isCONNECTION.

Returns:

  • (::Float) —

    Defines a maximum target for requests per second (RPS). For usage guidelines, seeRate balancing mode and Utilization balancing mode.

    Not available if the backend's balancingMode isCONNECTION.



9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 9844

class Backend
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies how to determine whether the backend of a load balancer can
  # handle additional traffic or is fully loaded. For usage guidelines, see
  # Connection balancing mode.
  #
  # Backends must use compatible balancing modes. Backends of a backend
  # service may use different balancing modes. For more information, see
  # Supported balancing modes and target capacity settings and
  # Restrictions and guidance for instance groups.
  #
  # Note: Currently, if you use the API to configure incompatible balancing
  # modes, the configuration might be accepted even though it has no impact
  # and is ignored. Specifically, Backend.maxUtilization is ignored when
  # Backend.balancingMode is RATE. In the future, this incompatible combination
  # will be rejected.
  module BalancingMode
    # A value indicating that the enum field is not set.
    UNDEFINED_BALANCING_MODE = 0

    # Balance based on the number of simultaneous connections.
    CONNECTION = 246_311_646

    # Based on custom defined and reported metrics.
    CUSTOM_METRICS = 331_575_765

    # Balance based on the number of in-flight requests.
    IN_FLIGHT = 190_040_266

    # Balance based on requests per second (RPS).
    RATE = 2_508_000

    # Balance based on the backend utilization.
    UTILIZATION = 157_008_386
  end

  # This field indicates whether this backend should be fully utilized before
  # sending traffic to backends with default preference. The possible values
  # are:
  #
  #    - PREFERRED: Backends with this preference level will be
  #    filled up to their capacity limits first, based on RTT.
  #    - DEFAULT:  If preferred backends don't have enough
  #    capacity, backends in this layer would be used and traffic would be
  #    assigned based on the load balancing algorithm you use. This is the
  #    default
  #
  #
  #
  # For global external Passthrough Network Load Balancers, the following
  # restrictions apply:
  #
  #    - At most one backend can be marked as PREFERRED.
  #    - PREFERRED and DEFAULT backends cannot reside
  #    in the same Cloud region.
  module Preference
    # A value indicating that the enum field is not set.
    UNDEFINED_PREFERENCE = 0

    # No preference.
    DEFAULT = 115_302_945

    # If preference is unspecified, we set it to the DEFAULT value
    PREFERENCE_UNSPECIFIED = 496_219_571

    # Traffic will be sent to this backend first.
    PREFERRED = 418_847_841
  end

  module TrafficDuration
    # A value indicating that the enum field is not set.
    UNDEFINED_TRAFFIC_DURATION = 0

    # Most of the requests are expected to take more than multiple seconds to
    # finish.
    LONG = 2_342_524

    # Most requests are expected to finish with a sub-second latency.
    SHORT = 78_875_740

    # Traffic duration is unspecified.
    TRAFFIC_DURATION_UNSPECIFIED = 265_201_166
  end
end

#max_utilization ⇒ ::Float

Returns Optional parameter to define a target capacity for theUTILIZATION balancing mode. The valid range is[0.0, 1.0].

For usage guidelines, seeUtilization balancing mode.

Returns:

  • (::Float) —

    Optional parameter to define a target capacity for theUTILIZATION balancing mode. The valid range is[0.0, 1.0].

    For usage guidelines, seeUtilization balancing mode.



9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 9844

class Backend
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies how to determine whether the backend of a load balancer can
  # handle additional traffic or is fully loaded. For usage guidelines, see
  # Connection balancing mode.
  #
  # Backends must use compatible balancing modes. Backends of a backend
  # service may use different balancing modes. For more information, see
  # Supported balancing modes and target capacity settings and
  # Restrictions and guidance for instance groups.
  #
  # Note: Currently, if you use the API to configure incompatible balancing
  # modes, the configuration might be accepted even though it has no impact
  # and is ignored. Specifically, Backend.maxUtilization is ignored when
  # Backend.balancingMode is RATE. In the future, this incompatible combination
  # will be rejected.
  module BalancingMode
    # A value indicating that the enum field is not set.
    UNDEFINED_BALANCING_MODE = 0

    # Balance based on the number of simultaneous connections.
    CONNECTION = 246_311_646

    # Based on custom defined and reported metrics.
    CUSTOM_METRICS = 331_575_765

    # Balance based on the number of in-flight requests.
    IN_FLIGHT = 190_040_266

    # Balance based on requests per second (RPS).
    RATE = 2_508_000

    # Balance based on the backend utilization.
    UTILIZATION = 157_008_386
  end

  # This field indicates whether this backend should be fully utilized before
  # sending traffic to backends with default preference. The possible values
  # are:
  #
  #    - PREFERRED: Backends with this preference level will be
  #    filled up to their capacity limits first, based on RTT.
  #    - DEFAULT:  If preferred backends don't have enough
  #    capacity, backends in this layer would be used and traffic would be
  #    assigned based on the load balancing algorithm you use. This is the
  #    default
  #
  #
  #
  # For global external Passthrough Network Load Balancers, the following
  # restrictions apply:
  #
  #    - At most one backend can be marked as PREFERRED.
  #    - PREFERRED and DEFAULT backends cannot reside
  #    in the same Cloud region.
  module Preference
    # A value indicating that the enum field is not set.
    UNDEFINED_PREFERENCE = 0

    # No preference.
    DEFAULT = 115_302_945

    # If preference is unspecified, we set it to the DEFAULT value
    PREFERENCE_UNSPECIFIED = 496_219_571

    # Traffic will be sent to this backend first.
    PREFERRED = 418_847_841
  end

  module TrafficDuration
    # A value indicating that the enum field is not set.
    UNDEFINED_TRAFFIC_DURATION = 0

    # Most of the requests are expected to take more than multiple seconds to
    # finish.
    LONG = 2_342_524

    # Most requests are expected to finish with a sub-second latency.
    SHORT = 78_875_740

    # Traffic duration is unspecified.
    TRAFFIC_DURATION_UNSPECIFIED = 265_201_166
  end
end

#orchestration_info ⇒ ::Google::Cloud::Compute::V1::BackendBackendOrchestrationInfo

Returns Information about the resource or system that manages the backend.

Returns:



9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 9844

class Backend
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies how to determine whether the backend of a load balancer can
  # handle additional traffic or is fully loaded. For usage guidelines, see
  # Connection balancing mode.
  #
  # Backends must use compatible balancing modes. Backends of a backend
  # service may use different balancing modes. For more information, see
  # Supported balancing modes and target capacity settings and
  # Restrictions and guidance for instance groups.
  #
  # Note: Currently, if you use the API to configure incompatible balancing
  # modes, the configuration might be accepted even though it has no impact
  # and is ignored. Specifically, Backend.maxUtilization is ignored when
  # Backend.balancingMode is RATE. In the future, this incompatible combination
  # will be rejected.
  module BalancingMode
    # A value indicating that the enum field is not set.
    UNDEFINED_BALANCING_MODE = 0

    # Balance based on the number of simultaneous connections.
    CONNECTION = 246_311_646

    # Based on custom defined and reported metrics.
    CUSTOM_METRICS = 331_575_765

    # Balance based on the number of in-flight requests.
    IN_FLIGHT = 190_040_266

    # Balance based on requests per second (RPS).
    RATE = 2_508_000

    # Balance based on the backend utilization.
    UTILIZATION = 157_008_386
  end

  # This field indicates whether this backend should be fully utilized before
  # sending traffic to backends with default preference. The possible values
  # are:
  #
  #    - PREFERRED: Backends with this preference level will be
  #    filled up to their capacity limits first, based on RTT.
  #    - DEFAULT:  If preferred backends don't have enough
  #    capacity, backends in this layer would be used and traffic would be
  #    assigned based on the load balancing algorithm you use. This is the
  #    default
  #
  #
  #
  # For global external Passthrough Network Load Balancers, the following
  # restrictions apply:
  #
  #    - At most one backend can be marked as PREFERRED.
  #    - PREFERRED and DEFAULT backends cannot reside
  #    in the same Cloud region.
  module Preference
    # A value indicating that the enum field is not set.
    UNDEFINED_PREFERENCE = 0

    # No preference.
    DEFAULT = 115_302_945

    # If preference is unspecified, we set it to the DEFAULT value
    PREFERENCE_UNSPECIFIED = 496_219_571

    # Traffic will be sent to this backend first.
    PREFERRED = 418_847_841
  end

  module TrafficDuration
    # A value indicating that the enum field is not set.
    UNDEFINED_TRAFFIC_DURATION = 0

    # Most of the requests are expected to take more than multiple seconds to
    # finish.
    LONG = 2_342_524

    # Most requests are expected to finish with a sub-second latency.
    SHORT = 78_875_740

    # Traffic duration is unspecified.
    TRAFFIC_DURATION_UNSPECIFIED = 265_201_166
  end
end

#preference ⇒ ::String

Returns This field indicates whether this backend should be fully utilized before sending traffic to backends with default preference. The possible values are:

- PREFERRED: Backends with this preference level will be
filled up to their capacity limits first, based on RTT.
- DEFAULT:  If preferred backends don't have enough
capacity, backends in this layer would be used and traffic would be
assigned based on the load balancing algorithm you use. This is the
default

For global external Passthrough Network Load Balancers, the following restrictions apply:

- At most one backend can be marked as PREFERRED.
- PREFERRED and DEFAULT backends cannot reside
in the same Cloud region.

Check the Preference enum for the list of possible values.

Returns:

  • (::String) —

    This field indicates whether this backend should be fully utilized before sending traffic to backends with default preference. The possible values are:

    - PREFERRED: Backends with this preference level will be
    filled up to their capacity limits first, based on RTT.
    - DEFAULT:  If preferred backends don't have enough
    capacity, backends in this layer would be used and traffic would be
    assigned based on the load balancing algorithm you use. This is the
    default
    

    For global external Passthrough Network Load Balancers, the following restrictions apply:

    - At most one backend can be marked as PREFERRED.
    - PREFERRED and DEFAULT backends cannot reside
    in the same Cloud region.
    

    Check the Preference enum for the list of possible values.



9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 9844

class Backend
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies how to determine whether the backend of a load balancer can
  # handle additional traffic or is fully loaded. For usage guidelines, see
  # Connection balancing mode.
  #
  # Backends must use compatible balancing modes. Backends of a backend
  # service may use different balancing modes. For more information, see
  # Supported balancing modes and target capacity settings and
  # Restrictions and guidance for instance groups.
  #
  # Note: Currently, if you use the API to configure incompatible balancing
  # modes, the configuration might be accepted even though it has no impact
  # and is ignored. Specifically, Backend.maxUtilization is ignored when
  # Backend.balancingMode is RATE. In the future, this incompatible combination
  # will be rejected.
  module BalancingMode
    # A value indicating that the enum field is not set.
    UNDEFINED_BALANCING_MODE = 0

    # Balance based on the number of simultaneous connections.
    CONNECTION = 246_311_646

    # Based on custom defined and reported metrics.
    CUSTOM_METRICS = 331_575_765

    # Balance based on the number of in-flight requests.
    IN_FLIGHT = 190_040_266

    # Balance based on requests per second (RPS).
    RATE = 2_508_000

    # Balance based on the backend utilization.
    UTILIZATION = 157_008_386
  end

  # This field indicates whether this backend should be fully utilized before
  # sending traffic to backends with default preference. The possible values
  # are:
  #
  #    - PREFERRED: Backends with this preference level will be
  #    filled up to their capacity limits first, based on RTT.
  #    - DEFAULT:  If preferred backends don't have enough
  #    capacity, backends in this layer would be used and traffic would be
  #    assigned based on the load balancing algorithm you use. This is the
  #    default
  #
  #
  #
  # For global external Passthrough Network Load Balancers, the following
  # restrictions apply:
  #
  #    - At most one backend can be marked as PREFERRED.
  #    - PREFERRED and DEFAULT backends cannot reside
  #    in the same Cloud region.
  module Preference
    # A value indicating that the enum field is not set.
    UNDEFINED_PREFERENCE = 0

    # No preference.
    DEFAULT = 115_302_945

    # If preference is unspecified, we set it to the DEFAULT value
    PREFERENCE_UNSPECIFIED = 496_219_571

    # Traffic will be sent to this backend first.
    PREFERRED = 418_847_841
  end

  module TrafficDuration
    # A value indicating that the enum field is not set.
    UNDEFINED_TRAFFIC_DURATION = 0

    # Most of the requests are expected to take more than multiple seconds to
    # finish.
    LONG = 2_342_524

    # Most requests are expected to finish with a sub-second latency.
    SHORT = 78_875_740

    # Traffic duration is unspecified.
    TRAFFIC_DURATION_UNSPECIFIED = 265_201_166
  end
end

#traffic_duration ⇒ ::String

Returns Check the TrafficDuration enum for the list of possible values.

Returns:

  • (::String) —

    Check the TrafficDuration enum for the list of possible values.



9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 9844

class Backend
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Specifies how to determine whether the backend of a load balancer can
  # handle additional traffic or is fully loaded. For usage guidelines, see
  # Connection balancing mode.
  #
  # Backends must use compatible balancing modes. Backends of a backend
  # service may use different balancing modes. For more information, see
  # Supported balancing modes and target capacity settings and
  # Restrictions and guidance for instance groups.
  #
  # Note: Currently, if you use the API to configure incompatible balancing
  # modes, the configuration might be accepted even though it has no impact
  # and is ignored. Specifically, Backend.maxUtilization is ignored when
  # Backend.balancingMode is RATE. In the future, this incompatible combination
  # will be rejected.
  module BalancingMode
    # A value indicating that the enum field is not set.
    UNDEFINED_BALANCING_MODE = 0

    # Balance based on the number of simultaneous connections.
    CONNECTION = 246_311_646

    # Based on custom defined and reported metrics.
    CUSTOM_METRICS = 331_575_765

    # Balance based on the number of in-flight requests.
    IN_FLIGHT = 190_040_266

    # Balance based on requests per second (RPS).
    RATE = 2_508_000

    # Balance based on the backend utilization.
    UTILIZATION = 157_008_386
  end

  # This field indicates whether this backend should be fully utilized before
  # sending traffic to backends with default preference. The possible values
  # are:
  #
  #    - PREFERRED: Backends with this preference level will be
  #    filled up to their capacity limits first, based on RTT.
  #    - DEFAULT:  If preferred backends don't have enough
  #    capacity, backends in this layer would be used and traffic would be
  #    assigned based on the load balancing algorithm you use. This is the
  #    default
  #
  #
  #
  # For global external Passthrough Network Load Balancers, the following
  # restrictions apply:
  #
  #    - At most one backend can be marked as PREFERRED.
  #    - PREFERRED and DEFAULT backends cannot reside
  #    in the same Cloud region.
  module Preference
    # A value indicating that the enum field is not set.
    UNDEFINED_PREFERENCE = 0

    # No preference.
    DEFAULT = 115_302_945

    # If preference is unspecified, we set it to the DEFAULT value
    PREFERENCE_UNSPECIFIED = 496_219_571

    # Traffic will be sent to this backend first.
    PREFERRED = 418_847_841
  end

  module TrafficDuration
    # A value indicating that the enum field is not set.
    UNDEFINED_TRAFFIC_DURATION = 0

    # Most of the requests are expected to take more than multiple seconds to
    # finish.
    LONG = 2_342_524

    # Most requests are expected to finish with a sub-second latency.
    SHORT = 78_875_740

    # Traffic duration is unspecified.
    TRAFFIC_DURATION_UNSPECIFIED = 265_201_166
  end
end