Versions in this module Expand all Collapse all v1 v1.5.4 Oct 26, 2023 Changes in this version + const DefaultVnodeCount + func IPToUInt32(ip string) uint32 + type Config struct + HashFunction string + VnodeCount int + func (c *Config) SetDefault() + func (c *Config) Verify() error + type ContinuumSelector struct + func NewContinuum(instanceSet *model.InstanceSet, vnodeCount int, hashFunc hash.HashFuncWithSeed, ...) (*ContinuumSelector, error) + func (c *ContinuumSelector) Select(value interface{}) (int, *model.ReplicateNodes, error) + func (c ContinuumSelector) String() string + type KetamaLoadBalancer struct + func (k *KetamaLoadBalancer) ChooseInstance(criteria *loadbalancer.Criteria, inputInstances model.ServiceInstances) (model.Instance, error) + func (k *KetamaLoadBalancer) Destroy() error + func (k *KetamaLoadBalancer) Init(ctx *plugin.InitContext) error + func (k *KetamaLoadBalancer) Name() string + func (k *KetamaLoadBalancer) Type() common.Type + type L5CSTLoadBalancer struct + func (l *L5CSTLoadBalancer) ChooseInstance(criteria *loadbalancer.Criteria, inputInstances model.ServiceInstances) (model.Instance, error) + func (l *L5CSTLoadBalancer) Init(ctx *plugin.InitContext) error + func (l *L5CSTLoadBalancer) Name() string + func (l *L5CSTLoadBalancer) Type() common.Type + type L5ContinuumSelector struct + func NewL5Continuum(instanceSet *model.InstanceSet, id int32) (*L5ContinuumSelector, error) + func (c *L5ContinuumSelector) Select(value interface{}) (int, *model.ReplicateNodes, error)