Class LeastRequest
java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessage
io.envoyproxy.envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest
- All Implemented Interfaces:
com.google.protobuf.Message
,com.google.protobuf.MessageLite
,com.google.protobuf.MessageLiteOrBuilder
,com.google.protobuf.MessageOrBuilder
,LeastRequestOrBuilder
,Serializable
public final class LeastRequest
extends com.google.protobuf.GeneratedMessage
implements LeastRequestOrBuilder
This configuration allows the built-in LEAST_REQUEST LB policy to be configured via the LB policy extension point. See the :ref:`load balancing architecture overview <arch_overview_load_balancing_types>` for more information. [#next-free-field: 7]Protobuf type
envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final class
This configuration allows the built-in LEAST_REQUEST LB policy to be configured via the LB policy extension point.static enum
Available methods for selecting the host set from which to return the host with the fewest active requests.Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessage
com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>,
BuilderT extends com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT, BuilderT>>, com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessage.ExtendableMessageOrBuilder<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessage.FieldAccessorTable, com.google.protobuf.GeneratedMessage.GeneratedExtension<ContainingT extends com.google.protobuf.Message, T>, com.google.protobuf.GeneratedMessage.UnusedPrivateParameter Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessage
com.google.protobuf.AbstractMessage.BuilderParent
Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessageLite.InternalOneOfEnum
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
private RuntimeDouble
private int
static final int
private com.google.protobuf.UInt32Value
private static final LeastRequest
static final int
private com.google.protobuf.BoolValue
static final int
private LocalityLbConfig
private byte
private static final com.google.protobuf.Parser
<LeastRequest> static final int
private int
private static final long
static final int
private SlowStartConfig
Fields inherited from class com.google.protobuf.GeneratedMessage
alwaysUseFieldBuilders, unknownFields
Fields inherited from class com.google.protobuf.AbstractMessage
memoizedSize
Fields inherited from class com.google.protobuf.AbstractMessageLite
memoizedHashCode
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprivate
private
LeastRequest
(com.google.protobuf.GeneratedMessage.Builder<?> builder) -
Method Summary
Modifier and TypeMethodDescriptionboolean
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.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.com.google.protobuf.UInt32Value
The number of random healthy hosts from which the host with the fewest active requests will be chosen.com.google.protobuf.UInt32ValueOrBuilder
The number of random healthy hosts from which the host with the fewest active requests will be chosen.static LeastRequest
static final com.google.protobuf.Descriptors.Descriptor
com.google.protobuf.BoolValue
Deprecated.envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest.enable_full_scan is deprecated.com.google.protobuf.BoolValueOrBuilder
Deprecated.Configuration for local zone aware load balancing or locality weighted load balancing.Configuration for local zone aware load balancing or locality weighted load balancing.com.google.protobuf.Parser
<LeastRequest> Method for selecting the host set from which to return the host with the fewest active requests.int
Method for selecting the host set from which to return the host with the fewest active requests.int
Configuration for slow start mode.Configuration for slow start mode.boolean
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.boolean
The number of random healthy hosts from which the host with the fewest active requests will be chosen.boolean
Deprecated.envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest.enable_full_scan is deprecated.int
hashCode()
boolean
Configuration for local zone aware load balancing or locality weighted load balancing.boolean
Configuration for slow start mode.protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
final boolean
static LeastRequest.Builder
static LeastRequest.Builder
newBuilder
(LeastRequest prototype) protected LeastRequest.Builder
newBuilderForType
(com.google.protobuf.AbstractMessage.BuilderParent parent) static LeastRequest
parseDelimitedFrom
(InputStream input) static LeastRequest
parseDelimitedFrom
(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static LeastRequest
parseFrom
(byte[] data) static LeastRequest
parseFrom
(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static LeastRequest
parseFrom
(com.google.protobuf.ByteString data) static LeastRequest
parseFrom
(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static LeastRequest
parseFrom
(com.google.protobuf.CodedInputStream input) static LeastRequest
parseFrom
(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static LeastRequest
parseFrom
(InputStream input) static LeastRequest
parseFrom
(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static LeastRequest
parseFrom
(ByteBuffer data) static LeastRequest
parseFrom
(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static com.google.protobuf.Parser
<LeastRequest> parser()
void
writeTo
(com.google.protobuf.CodedOutputStream output) Methods inherited from class com.google.protobuf.GeneratedMessage
canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, isStringEmpty, makeMutableCopy, makeMutableCopy, mergeFromAndMakeImmutableInternal, newFileScopedGeneratedExtension, newInstance, newMessageScopedGeneratedExtension, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTag
Methods inherited from class com.google.protobuf.AbstractMessage
findInitializationErrors, getInitializationErrorString, hashFields, toString
Methods inherited from class com.google.protobuf.AbstractMessageLite
addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.google.protobuf.MessageLite
toByteArray, toByteString, writeDelimitedTo, writeTo
Methods inherited from interface com.google.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
-
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_
-
SLOW_START_CONFIG_FIELD_NUMBER
public static final int SLOW_START_CONFIG_FIELD_NUMBER- See Also:
-
slowStartConfig_
-
LOCALITY_LB_CONFIG_FIELD_NUMBER
public static final int LOCALITY_LB_CONFIG_FIELD_NUMBER- See Also:
-
localityLbConfig_
-
ENABLE_FULL_SCAN_FIELD_NUMBER
public static final int ENABLE_FULL_SCAN_FIELD_NUMBER- See Also:
-
enableFullScan_
private com.google.protobuf.BoolValue enableFullScan_ -
SELECTION_METHOD_FIELD_NUMBER
public static final int SELECTION_METHOD_FIELD_NUMBER- See Also:
-
selectionMethod_
private int selectionMethod_ -
memoizedIsInitialized
private byte memoizedIsInitialized -
DEFAULT_INSTANCE
-
PARSER
-
-
Constructor Details
-
LeastRequest
private LeastRequest(com.google.protobuf.GeneratedMessage.Builder<?> builder) -
LeastRequest
private LeastRequest()
-
-
Method Details
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() -
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()- Specified by:
internalGetFieldAccessorTable
in classcom.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. Only applies to the ``N_CHOICES`` selection method.
.google.protobuf.UInt32Value choice_count = 1 [(.validate.rules) = { ... }
- Specified by:
hasChoiceCount
in interfaceLeastRequestOrBuilder
- 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. Only applies to the ``N_CHOICES`` selection method.
.google.protobuf.UInt32Value choice_count = 1 [(.validate.rules) = { ... }
- Specified by:
getChoiceCount
in interfaceLeastRequestOrBuilder
- 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. Only applies to the ``N_CHOICES`` selection method.
.google.protobuf.UInt32Value choice_count = 1 [(.validate.rules) = { ... }
- Specified by:
getChoiceCountOrBuilder
in interfaceLeastRequestOrBuilder
-
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 interfaceLeastRequestOrBuilder
- Returns:
- Whether the activeRequestBias field is set.
-
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 interfaceLeastRequestOrBuilder
- Returns:
- The activeRequestBias.
-
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 interfaceLeastRequestOrBuilder
-
hasSlowStartConfig
public boolean hasSlowStartConfig()Configuration for slow start mode. If this configuration is not set, slow start will not be not enabled.
.envoy.extensions.load_balancing_policies.common.v3.SlowStartConfig slow_start_config = 3;
- Specified by:
hasSlowStartConfig
in interfaceLeastRequestOrBuilder
- Returns:
- Whether the slowStartConfig field is set.
-
getSlowStartConfig
Configuration for slow start mode. If this configuration is not set, slow start will not be not enabled.
.envoy.extensions.load_balancing_policies.common.v3.SlowStartConfig slow_start_config = 3;
- Specified by:
getSlowStartConfig
in interfaceLeastRequestOrBuilder
- Returns:
- The slowStartConfig.
-
getSlowStartConfigOrBuilder
Configuration for slow start mode. If this configuration is not set, slow start will not be not enabled.
.envoy.extensions.load_balancing_policies.common.v3.SlowStartConfig slow_start_config = 3;
- Specified by:
getSlowStartConfigOrBuilder
in interfaceLeastRequestOrBuilder
-
hasLocalityLbConfig
public boolean hasLocalityLbConfig()Configuration for local zone aware load balancing or locality weighted load balancing.
.envoy.extensions.load_balancing_policies.common.v3.LocalityLbConfig locality_lb_config = 4;
- Specified by:
hasLocalityLbConfig
in interfaceLeastRequestOrBuilder
- Returns:
- Whether the localityLbConfig field is set.
-
getLocalityLbConfig
Configuration for local zone aware load balancing or locality weighted load balancing.
.envoy.extensions.load_balancing_policies.common.v3.LocalityLbConfig locality_lb_config = 4;
- Specified by:
getLocalityLbConfig
in interfaceLeastRequestOrBuilder
- Returns:
- The localityLbConfig.
-
getLocalityLbConfigOrBuilder
Configuration for local zone aware load balancing or locality weighted load balancing.
.envoy.extensions.load_balancing_policies.common.v3.LocalityLbConfig locality_lb_config = 4;
- Specified by:
getLocalityLbConfigOrBuilder
in interfaceLeastRequestOrBuilder
-
hasEnableFullScan
Deprecated.envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest.enable_full_scan is deprecated. See envoy/extensions/load_balancing_policies/least_request/v3/least_request.proto;l=89[#not-implemented-hide:] Unused. Replaced by the `selection_method` enum for better extensibility.
.google.protobuf.BoolValue enable_full_scan = 5 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
hasEnableFullScan
in interfaceLeastRequestOrBuilder
- Returns:
- Whether the enableFullScan field is set.
-
getEnableFullScan
Deprecated.envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest.enable_full_scan is deprecated. See envoy/extensions/load_balancing_policies/least_request/v3/least_request.proto;l=89[#not-implemented-hide:] Unused. Replaced by the `selection_method` enum for better extensibility.
.google.protobuf.BoolValue enable_full_scan = 5 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getEnableFullScan
in interfaceLeastRequestOrBuilder
- Returns:
- The enableFullScan.
-
getEnableFullScanOrBuilder
Deprecated.[#not-implemented-hide:] Unused. Replaced by the `selection_method` enum for better extensibility.
.google.protobuf.BoolValue enable_full_scan = 5 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getEnableFullScanOrBuilder
in interfaceLeastRequestOrBuilder
-
getSelectionMethodValue
public int getSelectionMethodValue()Method for selecting the host set from which to return the host with the fewest active requests. Defaults to ``N_CHOICES``.
.envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest.SelectionMethod selection_method = 6 [(.validate.rules) = { ... }
- Specified by:
getSelectionMethodValue
in interfaceLeastRequestOrBuilder
- Returns:
- The enum numeric value on the wire for selectionMethod.
-
getSelectionMethod
Method for selecting the host set from which to return the host with the fewest active requests. Defaults to ``N_CHOICES``.
.envoy.extensions.load_balancing_policies.least_request.v3.LeastRequest.SelectionMethod selection_method = 6 [(.validate.rules) = { ... }
- Specified by:
getSelectionMethod
in interfaceLeastRequestOrBuilder
- Returns:
- The selectionMethod.
-
isInitialized
public final boolean isInitialized()- Specified by:
isInitialized
in interfacecom.google.protobuf.MessageLiteOrBuilder
- Overrides:
isInitialized
in classcom.google.protobuf.GeneratedMessage
-
writeTo
- Specified by:
writeTo
in interfacecom.google.protobuf.MessageLite
- Overrides:
writeTo
in classcom.google.protobuf.GeneratedMessage
- Throws:
IOException
-
getSerializedSize
public int getSerializedSize()- Specified by:
getSerializedSize
in interfacecom.google.protobuf.MessageLite
- Overrides:
getSerializedSize
in classcom.google.protobuf.GeneratedMessage
-
equals
- Specified by:
equals
in interfacecom.google.protobuf.Message
- Overrides:
equals
in classcom.google.protobuf.AbstractMessage
-
hashCode
public int hashCode()- Specified by:
hashCode
in interfacecom.google.protobuf.Message
- Overrides:
hashCode
in classcom.google.protobuf.AbstractMessage
-
parseFrom
public static LeastRequest parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static LeastRequest parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static LeastRequest parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static LeastRequest parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static LeastRequest parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static LeastRequest parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
- Throws:
IOException
-
parseFrom
public static LeastRequest parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseDelimitedFrom
- Throws:
IOException
-
parseDelimitedFrom
public static LeastRequest parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseFrom
- Throws:
IOException
-
parseFrom
public static LeastRequest parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
newBuilderForType
- Specified by:
newBuilderForType
in interfacecom.google.protobuf.Message
- Specified by:
newBuilderForType
in interfacecom.google.protobuf.MessageLite
-
newBuilder
-
newBuilder
-
toBuilder
- Specified by:
toBuilder
in interfacecom.google.protobuf.Message
- Specified by:
toBuilder
in interfacecom.google.protobuf.MessageLite
-
newBuilderForType
protected LeastRequest.Builder newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent) - Overrides:
newBuilderForType
in classcom.google.protobuf.AbstractMessage
-
getDefaultInstance
-
parser
-
getParserForType
- Specified by:
getParserForType
in interfacecom.google.protobuf.Message
- Specified by:
getParserForType
in interfacecom.google.protobuf.MessageLite
- Overrides:
getParserForType
in classcom.google.protobuf.GeneratedMessage
-
getDefaultInstanceForType
- Specified by:
getDefaultInstanceForType
in interfacecom.google.protobuf.MessageLiteOrBuilder
- Specified by:
getDefaultInstanceForType
in interfacecom.google.protobuf.MessageOrBuilder
-