Class SlowStartConfig
- java.lang.Object
-
- com.google.protobuf.AbstractMessageLite
-
- com.google.protobuf.AbstractMessage
-
- com.google.protobuf.GeneratedMessageV3
-
- io.envoyproxy.envoy.extensions.load_balancing_policies.common.v3.SlowStartConfig
-
- All Implemented Interfaces:
com.google.protobuf.Message,com.google.protobuf.MessageLite,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,SlowStartConfigOrBuilder,Serializable
public final class SlowStartConfig extends com.google.protobuf.GeneratedMessageV3 implements SlowStartConfigOrBuilder
Configuration for :ref:`slow start mode <arch_overview_load_balancing_slow_start>`.
Protobuf typeenvoy.extensions.load_balancing_policies.common.v3.SlowStartConfig- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classSlowStartConfig.BuilderConfiguration for :ref:`slow start mode <arch_overview_load_balancing_slow_start>`.-
Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessageV3
com.google.protobuf.GeneratedMessageV3.BuilderParent, com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage,BuilderType extends com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageType,BuilderType>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage>, com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage>, com.google.protobuf.GeneratedMessageV3.FieldAccessorTable, com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter
-
-
Field Summary
Fields Modifier and Type Field Description static intAGGRESSION_FIELD_NUMBERstatic intMIN_WEIGHT_PERCENT_FIELD_NUMBERstatic intSLOW_START_WINDOW_FIELD_NUMBER
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(Object obj)RuntimeDoublegetAggression()This parameter controls the speed of traffic increase over the slow start window.RuntimeDoubleOrBuildergetAggressionOrBuilder()This parameter controls the speed of traffic increase over the slow start window.static SlowStartConfiggetDefaultInstance()SlowStartConfiggetDefaultInstanceForType()static com.google.protobuf.Descriptors.DescriptorgetDescriptor()PercentgetMinWeightPercent()Configures the minimum percentage of origin weight that avoids too small new weight, which may cause endpoints in slow start mode receive no traffic in slow start window.PercentOrBuildergetMinWeightPercentOrBuilder()Configures the minimum percentage of origin weight that avoids too small new weight, which may cause endpoints in slow start mode receive no traffic in slow start window.com.google.protobuf.Parser<SlowStartConfig>getParserForType()intgetSerializedSize()com.google.protobuf.DurationgetSlowStartWindow()Represents the size of slow start window.com.google.protobuf.DurationOrBuildergetSlowStartWindowOrBuilder()Represents the size of slow start window.com.google.protobuf.UnknownFieldSetgetUnknownFields()booleanhasAggression()This parameter controls the speed of traffic increase over the slow start window.inthashCode()booleanhasMinWeightPercent()Configures the minimum percentage of origin weight that avoids too small new weight, which may cause endpoints in slow start mode receive no traffic in slow start window.booleanhasSlowStartWindow()Represents the size of slow start window.protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTableinternalGetFieldAccessorTable()booleanisInitialized()static SlowStartConfig.BuildernewBuilder()static SlowStartConfig.BuildernewBuilder(SlowStartConfig prototype)SlowStartConfig.BuildernewBuilderForType()protected SlowStartConfig.BuildernewBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)protected ObjectnewInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)static SlowStartConfigparseDelimitedFrom(InputStream input)static SlowStartConfigparseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static SlowStartConfigparseFrom(byte[] data)static SlowStartConfigparseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static SlowStartConfigparseFrom(com.google.protobuf.ByteString data)static SlowStartConfigparseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static SlowStartConfigparseFrom(com.google.protobuf.CodedInputStream input)static SlowStartConfigparseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static SlowStartConfigparseFrom(InputStream input)static SlowStartConfigparseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static SlowStartConfigparseFrom(ByteBuffer data)static SlowStartConfigparseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static com.google.protobuf.Parser<SlowStartConfig>parser()SlowStartConfig.BuildertoBuilder()voidwriteTo(com.google.protobuf.CodedOutputStream output)-
Methods inherited from class com.google.protobuf.GeneratedMessageV3
canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, hasField, hasOneof, internalGetMapField, isStringEmpty, makeExtensionsImmutable, mergeFromAndMakeImmutableInternal, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, newBooleanList, newBuilderForType, newDoubleList, newFloatList, newIntList, newLongList, 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, hashBoolean, hashEnum, hashEnumList, hashFields, hashLong, toString
-
Methods inherited from class com.google.protobuf.AbstractMessageLite
addAll, addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
-
-
-
Field Detail
-
SLOW_START_WINDOW_FIELD_NUMBER
public static final int SLOW_START_WINDOW_FIELD_NUMBER
- See Also:
- Constant Field Values
-
AGGRESSION_FIELD_NUMBER
public static final int AGGRESSION_FIELD_NUMBER
- See Also:
- Constant Field Values
-
MIN_WEIGHT_PERCENT_FIELD_NUMBER
public static final int MIN_WEIGHT_PERCENT_FIELD_NUMBER
- See Also:
- Constant Field Values
-
-
Method Detail
-
newInstance
protected Object newInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
- Overrides:
newInstancein classcom.google.protobuf.GeneratedMessageV3
-
getUnknownFields
public final com.google.protobuf.UnknownFieldSet getUnknownFields()
- Specified by:
getUnknownFieldsin interfacecom.google.protobuf.MessageOrBuilder- Overrides:
getUnknownFieldsin classcom.google.protobuf.GeneratedMessageV3
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
-
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
- Specified by:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessageV3
-
hasSlowStartWindow
public boolean hasSlowStartWindow()
Represents the size of slow start window. If set, the newly created host remains in slow start mode starting from its creation time for the duration of slow start window.
.google.protobuf.Duration slow_start_window = 1;- Specified by:
hasSlowStartWindowin interfaceSlowStartConfigOrBuilder- Returns:
- Whether the slowStartWindow field is set.
-
getSlowStartWindow
public com.google.protobuf.Duration getSlowStartWindow()
Represents the size of slow start window. If set, the newly created host remains in slow start mode starting from its creation time for the duration of slow start window.
.google.protobuf.Duration slow_start_window = 1;- Specified by:
getSlowStartWindowin interfaceSlowStartConfigOrBuilder- Returns:
- The slowStartWindow.
-
getSlowStartWindowOrBuilder
public com.google.protobuf.DurationOrBuilder getSlowStartWindowOrBuilder()
Represents the size of slow start window. If set, the newly created host remains in slow start mode starting from its creation time for the duration of slow start window.
.google.protobuf.Duration slow_start_window = 1;- Specified by:
getSlowStartWindowOrBuilderin interfaceSlowStartConfigOrBuilder
-
hasAggression
public boolean hasAggression()
This parameter controls the speed of traffic increase over the slow start window. Defaults to 1.0, so that endpoint would get linearly increasing amount of traffic. When increasing the value for this parameter, the speed of traffic ramp-up increases non-linearly. The value of aggression parameter should be greater than 0.0. By tuning the parameter, is possible to achieve polynomial or exponential shape of ramp-up curve. During slow start window, effective weight of an endpoint would be scaled with time factor and aggression: ``new_weight = weight * max(min_weight_percent, time_factor ^ (1 / aggression))``, where ``time_factor=(time_since_start_seconds / slow_start_time_seconds)``. As time progresses, more and more traffic would be sent to endpoint, which is in slow start window. Once host exits slow start, time_factor and aggression no longer affect its weight.
.envoy.config.core.v3.RuntimeDouble aggression = 2;- Specified by:
hasAggressionin interfaceSlowStartConfigOrBuilder- Returns:
- Whether the aggression field is set.
-
getAggression
public RuntimeDouble getAggression()
This parameter controls the speed of traffic increase over the slow start window. Defaults to 1.0, so that endpoint would get linearly increasing amount of traffic. When increasing the value for this parameter, the speed of traffic ramp-up increases non-linearly. The value of aggression parameter should be greater than 0.0. By tuning the parameter, is possible to achieve polynomial or exponential shape of ramp-up curve. During slow start window, effective weight of an endpoint would be scaled with time factor and aggression: ``new_weight = weight * max(min_weight_percent, time_factor ^ (1 / aggression))``, where ``time_factor=(time_since_start_seconds / slow_start_time_seconds)``. As time progresses, more and more traffic would be sent to endpoint, which is in slow start window. Once host exits slow start, time_factor and aggression no longer affect its weight.
.envoy.config.core.v3.RuntimeDouble aggression = 2;- Specified by:
getAggressionin interfaceSlowStartConfigOrBuilder- Returns:
- The aggression.
-
getAggressionOrBuilder
public RuntimeDoubleOrBuilder getAggressionOrBuilder()
This parameter controls the speed of traffic increase over the slow start window. Defaults to 1.0, so that endpoint would get linearly increasing amount of traffic. When increasing the value for this parameter, the speed of traffic ramp-up increases non-linearly. The value of aggression parameter should be greater than 0.0. By tuning the parameter, is possible to achieve polynomial or exponential shape of ramp-up curve. During slow start window, effective weight of an endpoint would be scaled with time factor and aggression: ``new_weight = weight * max(min_weight_percent, time_factor ^ (1 / aggression))``, where ``time_factor=(time_since_start_seconds / slow_start_time_seconds)``. As time progresses, more and more traffic would be sent to endpoint, which is in slow start window. Once host exits slow start, time_factor and aggression no longer affect its weight.
.envoy.config.core.v3.RuntimeDouble aggression = 2;- Specified by:
getAggressionOrBuilderin interfaceSlowStartConfigOrBuilder
-
hasMinWeightPercent
public boolean hasMinWeightPercent()
Configures the minimum percentage of origin weight that avoids too small new weight, which may cause endpoints in slow start mode receive no traffic in slow start window. If not specified, the default is 10%.
.envoy.type.v3.Percent min_weight_percent = 3;- Specified by:
hasMinWeightPercentin interfaceSlowStartConfigOrBuilder- Returns:
- Whether the minWeightPercent field is set.
-
getMinWeightPercent
public Percent getMinWeightPercent()
Configures the minimum percentage of origin weight that avoids too small new weight, which may cause endpoints in slow start mode receive no traffic in slow start window. If not specified, the default is 10%.
.envoy.type.v3.Percent min_weight_percent = 3;- Specified by:
getMinWeightPercentin interfaceSlowStartConfigOrBuilder- Returns:
- The minWeightPercent.
-
getMinWeightPercentOrBuilder
public PercentOrBuilder getMinWeightPercentOrBuilder()
Configures the minimum percentage of origin weight that avoids too small new weight, which may cause endpoints in slow start mode receive no traffic in slow start window. If not specified, the default is 10%.
.envoy.type.v3.Percent min_weight_percent = 3;- Specified by:
getMinWeightPercentOrBuilderin interfaceSlowStartConfigOrBuilder
-
isInitialized
public final boolean isInitialized()
- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessageV3
-
writeTo
public void writeTo(com.google.protobuf.CodedOutputStream output) throws IOException- Specified by:
writeToin interfacecom.google.protobuf.MessageLite- Overrides:
writeToin classcom.google.protobuf.GeneratedMessageV3- Throws:
IOException
-
getSerializedSize
public int getSerializedSize()
- Specified by:
getSerializedSizein interfacecom.google.protobuf.MessageLite- Overrides:
getSerializedSizein classcom.google.protobuf.GeneratedMessageV3
-
equals
public boolean equals(Object obj)
- Specified by:
equalsin interfacecom.google.protobuf.Message- Overrides:
equalsin classcom.google.protobuf.AbstractMessage
-
hashCode
public int hashCode()
- Specified by:
hashCodein interfacecom.google.protobuf.Message- Overrides:
hashCodein classcom.google.protobuf.AbstractMessage
-
parseFrom
public static SlowStartConfig parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static SlowStartConfig parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static SlowStartConfig parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static SlowStartConfig parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static SlowStartConfig parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static SlowStartConfig parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static SlowStartConfig parseFrom(InputStream input) throws IOException
- Throws:
IOException
-
parseFrom
public static SlowStartConfig parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
parseDelimitedFrom
public static SlowStartConfig parseDelimitedFrom(InputStream input) throws IOException
- Throws:
IOException
-
parseDelimitedFrom
public static SlowStartConfig parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
parseFrom
public static SlowStartConfig parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
- Throws:
IOException
-
parseFrom
public static SlowStartConfig parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
newBuilderForType
public SlowStartConfig.Builder newBuilderForType()
- Specified by:
newBuilderForTypein interfacecom.google.protobuf.Message- Specified by:
newBuilderForTypein interfacecom.google.protobuf.MessageLite
-
newBuilder
public static SlowStartConfig.Builder newBuilder()
-
newBuilder
public static SlowStartConfig.Builder newBuilder(SlowStartConfig prototype)
-
toBuilder
public SlowStartConfig.Builder toBuilder()
- Specified by:
toBuilderin interfacecom.google.protobuf.Message- Specified by:
toBuilderin interfacecom.google.protobuf.MessageLite
-
newBuilderForType
protected SlowStartConfig.Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
- Specified by:
newBuilderForTypein classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstance
public static SlowStartConfig getDefaultInstance()
-
parser
public static com.google.protobuf.Parser<SlowStartConfig> parser()
-
getParserForType
public com.google.protobuf.Parser<SlowStartConfig> getParserForType()
- Specified by:
getParserForTypein interfacecom.google.protobuf.Message- Specified by:
getParserForTypein interfacecom.google.protobuf.MessageLite- Overrides:
getParserForTypein classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstanceForType
public SlowStartConfig getDefaultInstanceForType()
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-
-