least_requestv3

package
v1.33.0-20231204201904... Latest Latest
Warning

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

Go to latest
Published: unknown License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var File_envoy_extensions_load_balancing_policies_least_request_v3_least_request_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type LeastRequest

type LeastRequest struct {

	// The number of random healthy hosts from which the host with the fewest active requests will
	// be chosen. Defaults to 2 so that we perform two-choice selection if the field is not set.
	ChoiceCount *wrapperspb.UInt32Value `protobuf:"bytes,1,opt,name=choice_count,json=choiceCount,proto3" json:"choice_count,omitempty"`
	// The following formula is used to calculate the dynamic weights when hosts have different load
	// balancing weights:
	//
	// “weight = load_balancing_weight / (active_requests + 1)^active_request_bias“
	//
	// The larger the active request bias is, the more aggressively active requests will lower the
	// effective weight when all host weights are not equal.
	//
	// “active_request_bias“ must be greater than or equal to 0.0.
	//
	// When “active_request_bias == 0.0“ the Least Request Load Balancer doesn't consider the number
	// of active requests at the time it picks a host and behaves like the Round Robin Load
	// Balancer.
	//
	// When “active_request_bias > 0.0“ the Least Request Load Balancer scales the load balancing
	// weight by the number of active requests at the time it does a pick.
	//
	// The value is cached for performance reasons and refreshed whenever one of the Load Balancer's
	// host sets changes, e.g., whenever there is a host membership update or a host load balancing
	// weight change.
	//
	// .. note::
	//
	//	This setting only takes effect if all host weights are not equal.
	ActiveRequestBias *v3.RuntimeDouble `protobuf:"bytes,2,opt,name=active_request_bias,json=activeRequestBias,proto3" json:"active_request_bias,omitempty"`
	// Configuration for slow start mode.
	// If this configuration is not set, slow start will not be not enabled.
	SlowStartConfig *v31.SlowStartConfig `protobuf:"bytes,3,opt,name=slow_start_config,json=slowStartConfig,proto3" json:"slow_start_config,omitempty"`
	// Configuration for local zone aware load balancing or locality weighted load balancing.
	LocalityLbConfig *v31.LocalityLbConfig `protobuf:"bytes,4,opt,name=locality_lb_config,json=localityLbConfig,proto3" json:"locality_lb_config,omitempty"`
	// Configuration for performing full scan on the list of hosts.
	// If this configuration is set, when selecting the host a full scan on the list hosts will be
	// used to select the one with least requests instead of using random choices.
	EnableFullScan *wrapperspb.BoolValue `protobuf:"bytes,5,opt,name=enable_full_scan,json=enableFullScan,proto3" json:"enable_full_scan,omitempty"`
	// contains filtered or unexported fields
}

This configuration allows the built-in LEAST_REQUEST LB policy to be configured via the LB policy extension point. See the :ref:`load balancing architecture overview <arch_overview_load_balancing_types>` for more information. [#next-free-field: 6]

func (*LeastRequest) Descriptor deprecated

func (*LeastRequest) Descriptor() ([]byte, []int)

Deprecated: Use LeastRequest.ProtoReflect.Descriptor instead.

func (*LeastRequest) GetActiveRequestBias

func (x *LeastRequest) GetActiveRequestBias() *v3.RuntimeDouble

func (*LeastRequest) GetChoiceCount

func (x *LeastRequest) GetChoiceCount() *wrapperspb.UInt32Value

func (*LeastRequest) GetEnableFullScan

func (x *LeastRequest) GetEnableFullScan() *wrapperspb.BoolValue

func (*LeastRequest) GetLocalityLbConfig

func (x *LeastRequest) GetLocalityLbConfig() *v31.LocalityLbConfig

func (*LeastRequest) GetSlowStartConfig

func (x *LeastRequest) GetSlowStartConfig() *v31.SlowStartConfig

func (*LeastRequest) ProtoMessage

func (*LeastRequest) ProtoMessage()

func (*LeastRequest) ProtoReflect

func (x *LeastRequest) ProtoReflect() protoreflect.Message

func (*LeastRequest) Reset

func (x *LeastRequest) Reset()

func (*LeastRequest) String

func (x *LeastRequest) String() string

Jump to

Keyboard shortcuts

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