Class Cluster.LeastRequestLbConfig

java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessage
io.envoyproxy.envoy.config.cluster.v3.Cluster.LeastRequestLbConfig
All Implemented Interfaces:
com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Cluster.LeastRequestLbConfigOrBuilder, Serializable
Enclosing class:
Cluster

public static final class Cluster.LeastRequestLbConfig extends com.google.protobuf.GeneratedMessage implements Cluster.LeastRequestLbConfigOrBuilder
 Specific configuration for the LeastRequest load balancing policy.
 
Protobuf type envoy.config.cluster.v3.Cluster.LeastRequestLbConfig
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • bitField0_

      private int bitField0_
    • CHOICE_COUNT_FIELD_NUMBER

      public static final int CHOICE_COUNT_FIELD_NUMBER
      See Also:
    • choiceCount_

      private com.google.protobuf.UInt32Value choiceCount_
    • ACTIVE_REQUEST_BIAS_FIELD_NUMBER

      public static final int ACTIVE_REQUEST_BIAS_FIELD_NUMBER
      See Also:
    • activeRequestBias_

      private RuntimeDouble activeRequestBias_
    • SLOW_START_CONFIG_FIELD_NUMBER

      public static final int SLOW_START_CONFIG_FIELD_NUMBER
      See Also:
    • slowStartConfig_

      private Cluster.SlowStartConfig slowStartConfig_
    • memoizedIsInitialized

      private byte memoizedIsInitialized
    • DEFAULT_INSTANCE

      private static final Cluster.LeastRequestLbConfig DEFAULT_INSTANCE
    • PARSER

      private static final com.google.protobuf.Parser<Cluster.LeastRequestLbConfig> PARSER
  • Constructor Details

    • LeastRequestLbConfig

      private LeastRequestLbConfig(com.google.protobuf.GeneratedMessage.Builder<?> builder)
    • LeastRequestLbConfig

      private LeastRequestLbConfig()
  • Method Details

    • getDescriptor

      public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage
    • hasChoiceCount

      public boolean hasChoiceCount()
       The number of random healthy hosts from which the host with the fewest active requests will
       be chosen. Defaults to 2 so that we perform two-choice selection if the field is not set.
       
      .google.protobuf.UInt32Value choice_count = 1 [(.validate.rules) = { ... }
      Specified by:
      hasChoiceCount in interface Cluster.LeastRequestLbConfigOrBuilder
      Returns:
      Whether the choiceCount field is set.
    • getChoiceCount

      public com.google.protobuf.UInt32Value getChoiceCount()
       The number of random healthy hosts from which the host with the fewest active requests will
       be chosen. Defaults to 2 so that we perform two-choice selection if the field is not set.
       
      .google.protobuf.UInt32Value choice_count = 1 [(.validate.rules) = { ... }
      Specified by:
      getChoiceCount in interface Cluster.LeastRequestLbConfigOrBuilder
      Returns:
      The choiceCount.
    • getChoiceCountOrBuilder

      public com.google.protobuf.UInt32ValueOrBuilder getChoiceCountOrBuilder()
       The number of random healthy hosts from which the host with the fewest active requests will
       be chosen. Defaults to 2 so that we perform two-choice selection if the field is not set.
       
      .google.protobuf.UInt32Value choice_count = 1 [(.validate.rules) = { ... }
      Specified by:
      getChoiceCountOrBuilder in interface Cluster.LeastRequestLbConfigOrBuilder
    • hasActiveRequestBias

      public boolean hasActiveRequestBias()
       The following formula is used to calculate the dynamic weights when hosts have different load
       balancing weights:
      
       ``weight = load_balancing_weight / (active_requests + 1)^active_request_bias``
      
       The larger the active request bias is, the more aggressively active requests will lower the
       effective weight when all host weights are not equal.
      
       ``active_request_bias`` must be greater than or equal to 0.0.
      
       When ``active_request_bias == 0.0`` the Least Request Load Balancer doesn't consider the number
       of active requests at the time it picks a host and behaves like the Round Robin Load
       Balancer.
      
       When ``active_request_bias > 0.0`` the Least Request Load Balancer scales the load balancing
       weight by the number of active requests at the time it does a pick.
      
       The value is cached for performance reasons and refreshed whenever one of the Load Balancer's
       host sets changes, e.g., whenever there is a host membership update or a host load balancing
       weight change.
      
       .. note::
       This setting only takes effect if all host weights are not equal.
       
      .envoy.config.core.v3.RuntimeDouble active_request_bias = 2;
      Specified by:
      hasActiveRequestBias in interface Cluster.LeastRequestLbConfigOrBuilder
      Returns:
      Whether the activeRequestBias field is set.
    • getActiveRequestBias

      public RuntimeDouble getActiveRequestBias()
       The following formula is used to calculate the dynamic weights when hosts have different load
       balancing weights:
      
       ``weight = load_balancing_weight / (active_requests + 1)^active_request_bias``
      
       The larger the active request bias is, the more aggressively active requests will lower the
       effective weight when all host weights are not equal.
      
       ``active_request_bias`` must be greater than or equal to 0.0.
      
       When ``active_request_bias == 0.0`` the Least Request Load Balancer doesn't consider the number
       of active requests at the time it picks a host and behaves like the Round Robin Load
       Balancer.
      
       When ``active_request_bias > 0.0`` the Least Request Load Balancer scales the load balancing
       weight by the number of active requests at the time it does a pick.
      
       The value is cached for performance reasons and refreshed whenever one of the Load Balancer's
       host sets changes, e.g., whenever there is a host membership update or a host load balancing
       weight change.
      
       .. note::
       This setting only takes effect if all host weights are not equal.
       
      .envoy.config.core.v3.RuntimeDouble active_request_bias = 2;
      Specified by:
      getActiveRequestBias in interface Cluster.LeastRequestLbConfigOrBuilder
      Returns:
      The activeRequestBias.
    • getActiveRequestBiasOrBuilder

      public RuntimeDoubleOrBuilder getActiveRequestBiasOrBuilder()
       The following formula is used to calculate the dynamic weights when hosts have different load
       balancing weights:
      
       ``weight = load_balancing_weight / (active_requests + 1)^active_request_bias``
      
       The larger the active request bias is, the more aggressively active requests will lower the
       effective weight when all host weights are not equal.
      
       ``active_request_bias`` must be greater than or equal to 0.0.
      
       When ``active_request_bias == 0.0`` the Least Request Load Balancer doesn't consider the number
       of active requests at the time it picks a host and behaves like the Round Robin Load
       Balancer.
      
       When ``active_request_bias > 0.0`` the Least Request Load Balancer scales the load balancing
       weight by the number of active requests at the time it does a pick.
      
       The value is cached for performance reasons and refreshed whenever one of the Load Balancer's
       host sets changes, e.g., whenever there is a host membership update or a host load balancing
       weight change.
      
       .. note::
       This setting only takes effect if all host weights are not equal.
       
      .envoy.config.core.v3.RuntimeDouble active_request_bias = 2;
      Specified by:
      getActiveRequestBiasOrBuilder in interface Cluster.LeastRequestLbConfigOrBuilder
    • hasSlowStartConfig

      public boolean hasSlowStartConfig()
       Configuration for slow start mode.
       If this configuration is not set, slow start will not be not enabled.
       
      .envoy.config.cluster.v3.Cluster.SlowStartConfig slow_start_config = 3;
      Specified by:
      hasSlowStartConfig in interface Cluster.LeastRequestLbConfigOrBuilder
      Returns:
      Whether the slowStartConfig field is set.
    • getSlowStartConfig

      public Cluster.SlowStartConfig getSlowStartConfig()
       Configuration for slow start mode.
       If this configuration is not set, slow start will not be not enabled.
       
      .envoy.config.cluster.v3.Cluster.SlowStartConfig slow_start_config = 3;
      Specified by:
      getSlowStartConfig in interface Cluster.LeastRequestLbConfigOrBuilder
      Returns:
      The slowStartConfig.
    • getSlowStartConfigOrBuilder

      public Cluster.SlowStartConfigOrBuilder getSlowStartConfigOrBuilder()
       Configuration for slow start mode.
       If this configuration is not set, slow start will not be not enabled.
       
      .envoy.config.cluster.v3.Cluster.SlowStartConfig slow_start_config = 3;
      Specified by:
      getSlowStartConfigOrBuilder in interface Cluster.LeastRequestLbConfigOrBuilder
    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessage
    • writeTo

      public void writeTo(com.google.protobuf.CodedOutputStream output) throws IOException
      Specified by:
      writeTo in interface com.google.protobuf.MessageLite
      Overrides:
      writeTo in class com.google.protobuf.GeneratedMessage
      Throws:
      IOException
    • getSerializedSize

      public int getSerializedSize()
      Specified by:
      getSerializedSize in interface com.google.protobuf.MessageLite
      Overrides:
      getSerializedSize in class com.google.protobuf.GeneratedMessage
    • equals

      public boolean equals(Object obj)
      Specified by:
      equals in interface com.google.protobuf.Message
      Overrides:
      equals in class com.google.protobuf.AbstractMessage
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in interface com.google.protobuf.Message
      Overrides:
      hashCode in class com.google.protobuf.AbstractMessage
    • parseFrom

      public static Cluster.LeastRequestLbConfig parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Cluster.LeastRequestLbConfig parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Cluster.LeastRequestLbConfig parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Cluster.LeastRequestLbConfig parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Cluster.LeastRequestLbConfig parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Cluster.LeastRequestLbConfig parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Cluster.LeastRequestLbConfig parseFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static Cluster.LeastRequestLbConfig parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static Cluster.LeastRequestLbConfig parseDelimitedFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static Cluster.LeastRequestLbConfig parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseFrom

      public static Cluster.LeastRequestLbConfig parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static Cluster.LeastRequestLbConfig parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • newBuilderForType

      public Cluster.LeastRequestLbConfig.Builder newBuilderForType()
      Specified by:
      newBuilderForType in interface com.google.protobuf.Message
      Specified by:
      newBuilderForType in interface com.google.protobuf.MessageLite
    • newBuilder

      public static Cluster.LeastRequestLbConfig.Builder newBuilder()
    • newBuilder

    • toBuilder

      Specified by:
      toBuilder in interface com.google.protobuf.Message
      Specified by:
      toBuilder in interface com.google.protobuf.MessageLite
    • newBuilderForType

      protected Cluster.LeastRequestLbConfig.Builder newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent)
      Overrides:
      newBuilderForType in class com.google.protobuf.AbstractMessage
    • getDefaultInstance

      public static Cluster.LeastRequestLbConfig getDefaultInstance()
    • parser

      public static com.google.protobuf.Parser<Cluster.LeastRequestLbConfig> parser()
    • getParserForType

      public com.google.protobuf.Parser<Cluster.LeastRequestLbConfig> getParserForType()
      Specified by:
      getParserForType in interface com.google.protobuf.Message
      Specified by:
      getParserForType in interface com.google.protobuf.MessageLite
      Overrides:
      getParserForType in class com.google.protobuf.GeneratedMessage
    • getDefaultInstanceForType

      public Cluster.LeastRequestLbConfig getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder