clusterimpl

package
v1.68.0-dev Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 9, 2024 License: Apache-2.0 Imports: 27 Imported by: 0

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

type DropConfig struct {
	Category           string
	RequestsPerMillion uint32
}

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.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL