Documentation ¶
Overview ¶
Package clusterimpl implements the xds_cluster_impl balancing policy. It handles the cluster features (e.g. circuit_breaking, RPC dropping).
Note that it doesn't handle name resolution, which is done by policy xds_cluster_resolver.
Index ¶
Constants ¶
View Source
const (
// Name is the name of the cluster_impl balancer.
Name = "xds_cluster_impl_experimental"
)
Variables ¶
View Source
var NewRandomWRR = wrr.NewRandom
NewRandomWRR is used when calculating drops. It's exported so that tests can override it.
Functions ¶
This section is empty.
Types ¶
type DropConfig ¶
DropConfig contains the category, and drop ratio.
type LBConfig ¶
type LBConfig struct { serviceconfig.LoadBalancingConfig `json:"-"` Cluster string `json:"cluster,omitempty"` EDSServiceName string `json:"edsServiceName,omitempty"` // LoadReportingServer is the LRS server to send load reports to. If not // present, load reporting will be disabled. LoadReportingServer *bootstrap.ServerConfig `json:"lrsLoadReportingServer,omitempty"` MaxConcurrentRequests *uint32 `json:"maxConcurrentRequests,omitempty"` DropCategories []DropConfig `json:"dropCategories,omitempty"` // TelemetryLabels are the telemetry Labels associated with this cluster. TelemetryLabels map[string]string `json:"telemetryLabels,omitempty"` ChildPolicy *internalserviceconfig.BalancerConfig `json:"childPolicy,omitempty"` }
LBConfig is the balancer config for cluster_impl balancer.
Click to show internal directories.
Click to hide internal directories.