etcd: go.etcd.io/etcd/clientv3/balancer/picker Index | Files

package picker

import "go.etcd.io/etcd/clientv3/balancer/picker"

Package picker defines/implements client balancer picker policy.

Index

Package Files

doc.go err.go picker.go roundrobin_balanced.go

type Config Uses

type Config struct {
    // Policy specifies etcd clientv3's built in balancer policy.
    Policy Policy

    // Logger defines picker logging object.
    Logger *zap.Logger

    // SubConnToResolverAddress maps each gRPC sub-connection to an address.
    // Basically, it is a list of addresses that the Picker can pick from.
    SubConnToResolverAddress map[balancer.SubConn]resolver.Address
}

Config defines picker configuration.

type Picker Uses

type Picker interface {
    balancer.Picker
    String() string
}

Picker defines balancer Picker methods.

func New Uses

func New(cfg Config) Picker

New creates a new Picker.

func NewErr Uses

func NewErr(err error) Picker

NewErr returns a picker that always returns err on "Pick".

type Policy Uses

type Policy uint8

Policy defines balancer picker policy.

const (
    // Error is error picker policy.
    Error Policy = iota

    // RoundrobinBalanced balances loads over multiple endpoints
    // and implements failover in roundrobin fashion.
    RoundrobinBalanced

    // Custom defines custom balancer picker.
    // TODO: custom picker is not supported yet.
    Custom
)

func (Policy) String Uses

func (p Policy) String() string

Package picker imports 7 packages (graph) and is imported by 28 packages. Updated 2019-07-28. Refresh now. Tools for package owners.