...

Package endpointsharding

import "google.golang.org/grpc/balancer/endpointsharding"
Overview
Index

Overview ▾

Package endpointsharding implements a load balancing policy that manages homogeneous child policies each owning a single endpoint.

Experimental

Notice: This package is EXPERIMENTAL and may be changed or removed in a later release.

Constants

PickFirstConfig is a pick first config without shuffling enabled.

const PickFirstConfig = "[{\"pick_first\": {}}]"

func NewBalancer

func NewBalancer(cc balancer.ClientConn, opts balancer.BuildOptions) balancer.Balancer

NewBalancer returns a load balancing policy that manages homogeneous child policies each owning a single endpoint.

func ParseConfig

func ParseConfig(cfg json.RawMessage) (serviceconfig.LoadBalancingConfig, error)

type ChildState

ChildState is the balancer state of a child along with the endpoint which identifies the child balancer.

type ChildState struct {
    Endpoint resolver.Endpoint
    State    balancer.State
}

func ChildStatesFromPicker

func ChildStatesFromPicker(picker balancer.Picker) []ChildState

ChildStatesFromPicker returns the state of all the children managed by the endpoint sharding balancer that created this picker.