Package internal contains functions/structs shared by xds balancers/resolvers.
const XDSClientID = clientID("xdsClientID")
XDSClientID is the attributes key used to pass the address of the xdsClient object shared between the resolver and the balancer. The xdsClient object is created by the resolver and passed to the balancer.
LocalityID is xds.Locality without XXX fields, so it can be used as map keys.
xds.Locality cannot be map keys because one of the XXX fields is a slice.
This struct should only be used as map keys. Use the proto message directly in all other places.
|balancer||Package balancer installs all the xds balancers.|
|balancer/balancergroup||Package balancergroup implements a utility struct to bind multiple balancers into one balancer.|
|balancer/cdsbalancer||Package cdsbalancer implements a balancer to handle CDS responses.|
|balancer/edsbalancer||Package edsbalancer contains EDS balancer implementation.|
|balancer/lrs||Package lrs implements load reporting service for xds balancer.|
|balancer/orca||Package orca implements Open Request Cost Aggregation.|
|balancer/weightedtarget||Package weightedtarget implements the weighted_target balancer.|
|client||Package client implementation a full fledged gRPC client for the xDS API used by the xds resolver and balancer implementations.|
|client/bootstrap||Package bootstrap provides the functionality to initialize certain aspects of an xDS client by reading a bootstrap file.|
|resolver||Package resolver implements the xds resolver, that does LDS and RDS to find the cluster to use.|
|testutils||Package testutils provides utility types, for use in xds tests.|
|testutils/fakeclient||Package fakeclient provides a fake implementation of an xDS client.|
|testutils/fakeserver||Package fakeserver provides a fake implementation of an xDS server.|