Class Cluster.RingHashLbConfig

  • All Implemented Interfaces:
    com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Cluster.RingHashLbConfigOrBuilder, java.io.Serializable
    Enclosing class:
    Cluster

    public static final class Cluster.RingHashLbConfig
    extends com.google.protobuf.GeneratedMessage
    implements Cluster.RingHashLbConfigOrBuilder
     Specific configuration for the :ref:`RingHash<arch_overview_load_balancing_types_ring_hash>`
     load balancing policy.
     
    Protobuf type envoy.config.cluster.v3.Cluster.RingHashLbConfig
    See Also:
    Serialized Form
    • Field Detail

      • bitField0_

        private int bitField0_
      • MINIMUM_RING_SIZE_FIELD_NUMBER

        public static final int MINIMUM_RING_SIZE_FIELD_NUMBER
        See Also:
        Constant Field Values
      • minimumRingSize_

        private com.google.protobuf.UInt64Value minimumRingSize_
      • HASH_FUNCTION_FIELD_NUMBER

        public static final int HASH_FUNCTION_FIELD_NUMBER
        See Also:
        Constant Field Values
      • hashFunction_

        private int hashFunction_
      • MAXIMUM_RING_SIZE_FIELD_NUMBER

        public static final int MAXIMUM_RING_SIZE_FIELD_NUMBER
        See Also:
        Constant Field Values
      • maximumRingSize_

        private com.google.protobuf.UInt64Value maximumRingSize_
      • memoizedIsInitialized

        private byte memoizedIsInitialized
    • Constructor Detail

      • RingHashLbConfig

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

        private RingHashLbConfig()
    • Method Detail

      • 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
      • hasMinimumRingSize

        public boolean hasMinimumRingSize()
         Minimum hash ring size. The larger the ring is (that is, the more hashes there are for each
         provided host) the better the request distribution will reflect the desired weights. Defaults
         to 1024 entries, and limited to 8M entries. See also
         :ref:`maximum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.maximum_ring_size>`.
         
        .google.protobuf.UInt64Value minimum_ring_size = 1 [(.validate.rules) = { ... }
        Specified by:
        hasMinimumRingSize in interface Cluster.RingHashLbConfigOrBuilder
        Returns:
        Whether the minimumRingSize field is set.
      • getMinimumRingSize

        public com.google.protobuf.UInt64Value getMinimumRingSize()
         Minimum hash ring size. The larger the ring is (that is, the more hashes there are for each
         provided host) the better the request distribution will reflect the desired weights. Defaults
         to 1024 entries, and limited to 8M entries. See also
         :ref:`maximum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.maximum_ring_size>`.
         
        .google.protobuf.UInt64Value minimum_ring_size = 1 [(.validate.rules) = { ... }
        Specified by:
        getMinimumRingSize in interface Cluster.RingHashLbConfigOrBuilder
        Returns:
        The minimumRingSize.
      • getMinimumRingSizeOrBuilder

        public com.google.protobuf.UInt64ValueOrBuilder getMinimumRingSizeOrBuilder()
         Minimum hash ring size. The larger the ring is (that is, the more hashes there are for each
         provided host) the better the request distribution will reflect the desired weights. Defaults
         to 1024 entries, and limited to 8M entries. See also
         :ref:`maximum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.maximum_ring_size>`.
         
        .google.protobuf.UInt64Value minimum_ring_size = 1 [(.validate.rules) = { ... }
        Specified by:
        getMinimumRingSizeOrBuilder in interface Cluster.RingHashLbConfigOrBuilder
      • getHashFunctionValue

        public int getHashFunctionValue()
         The hash function used to hash hosts onto the ketama ring. The value defaults to
         :ref:`XX_HASH<envoy_v3_api_enum_value_config.cluster.v3.Cluster.RingHashLbConfig.HashFunction.XX_HASH>`.
         
        .envoy.config.cluster.v3.Cluster.RingHashLbConfig.HashFunction hash_function = 3 [(.validate.rules) = { ... }
        Specified by:
        getHashFunctionValue in interface Cluster.RingHashLbConfigOrBuilder
        Returns:
        The enum numeric value on the wire for hashFunction.
      • getHashFunction

        public Cluster.RingHashLbConfig.HashFunction getHashFunction()
         The hash function used to hash hosts onto the ketama ring. The value defaults to
         :ref:`XX_HASH<envoy_v3_api_enum_value_config.cluster.v3.Cluster.RingHashLbConfig.HashFunction.XX_HASH>`.
         
        .envoy.config.cluster.v3.Cluster.RingHashLbConfig.HashFunction hash_function = 3 [(.validate.rules) = { ... }
        Specified by:
        getHashFunction in interface Cluster.RingHashLbConfigOrBuilder
        Returns:
        The hashFunction.
      • hasMaximumRingSize

        public boolean hasMaximumRingSize()
         Maximum hash ring size. Defaults to 8M entries, and limited to 8M entries, but can be lowered
         to further constrain resource use. See also
         :ref:`minimum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.minimum_ring_size>`.
         
        .google.protobuf.UInt64Value maximum_ring_size = 4 [(.validate.rules) = { ... }
        Specified by:
        hasMaximumRingSize in interface Cluster.RingHashLbConfigOrBuilder
        Returns:
        Whether the maximumRingSize field is set.
      • getMaximumRingSize

        public com.google.protobuf.UInt64Value getMaximumRingSize()
         Maximum hash ring size. Defaults to 8M entries, and limited to 8M entries, but can be lowered
         to further constrain resource use. See also
         :ref:`minimum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.minimum_ring_size>`.
         
        .google.protobuf.UInt64Value maximum_ring_size = 4 [(.validate.rules) = { ... }
        Specified by:
        getMaximumRingSize in interface Cluster.RingHashLbConfigOrBuilder
        Returns:
        The maximumRingSize.
      • getMaximumRingSizeOrBuilder

        public com.google.protobuf.UInt64ValueOrBuilder getMaximumRingSizeOrBuilder()
         Maximum hash ring size. Defaults to 8M entries, and limited to 8M entries, but can be lowered
         to further constrain resource use. See also
         :ref:`minimum_ring_size<envoy_v3_api_field_config.cluster.v3.Cluster.RingHashLbConfig.minimum_ring_size>`.
         
        .google.protobuf.UInt64Value maximum_ring_size = 4 [(.validate.rules) = { ... }
        Specified by:
        getMaximumRingSizeOrBuilder in interface Cluster.RingHashLbConfigOrBuilder
      • 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 java.io.IOException
        Specified by:
        writeTo in interface com.google.protobuf.MessageLite
        Overrides:
        writeTo in class com.google.protobuf.GeneratedMessage
        Throws:
        java.io.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​(java.lang.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.RingHashLbConfig parseFrom​(java.nio.ByteBuffer data)
                                                  throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

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

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

        public static Cluster.RingHashLbConfig 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.RingHashLbConfig parseFrom​(byte[] data)
                                                  throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

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

        public static Cluster.RingHashLbConfig parseFrom​(java.io.InputStream input)
                                                  throws java.io.IOException
        Throws:
        java.io.IOException
      • parseFrom

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

        public static Cluster.RingHashLbConfig parseDelimitedFrom​(java.io.InputStream input)
                                                           throws java.io.IOException
        Throws:
        java.io.IOException
      • parseDelimitedFrom

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

        public static Cluster.RingHashLbConfig parseFrom​(com.google.protobuf.CodedInputStream input)
                                                  throws java.io.IOException
        Throws:
        java.io.IOException
      • parseFrom

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

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

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

        protected Cluster.RingHashLbConfig.Builder newBuilderForType​(com.google.protobuf.AbstractMessage.BuilderParent parent)
        Overrides:
        newBuilderForType in class com.google.protobuf.AbstractMessage
      • getParserForType

        public com.google.protobuf.Parser<Cluster.RingHashLbConfig> 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.RingHashLbConfig getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder