loadbalancing

package
v1.7.6 Latest Latest
Warning

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

Go to latest
Published: Nov 18, 2019 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CalculateAvgLatency

func CalculateAvgLatency()

CalculateAvgLatency Calculating the average latency for each instance using the statistics collected, key is addr/service/protocol

func FilterAvailableZoneAffinity

func FilterAvailableZoneAffinity(old []*registry.MicroServiceInstance, c []*loadbalancer.Criteria) []*registry.MicroServiceInstance

FilterAvailableZoneAffinity is a region and zone based Select Filter which will Do the selection of instance in the same region and zone, if not Do the selection of instance in any zone in same region , if not Do the selection of instance in any zone of any region

func FilterByMetadata

FilterByMetadata filter instances based meta data

func SortLatency

func SortLatency()

SortLatency sort instance based on the average latencies

Types

type ByDuration

type ByDuration []*loadbalancer.ProtocolStats

ByDuration is for calculating the duration

func (ByDuration) Len

func (a ByDuration) Len() int

func (ByDuration) Less

func (a ByDuration) Less(i, j int) bool

func (ByDuration) Swap

func (a ByDuration) Swap(i, j int)

type WeightedResponseStrategy

type WeightedResponseStrategy struct {
	// contains filtered or unexported fields
}

WeightedResponseStrategy is a strategy plugin

func (*WeightedResponseStrategy) Pick

Pick return instance

func (*WeightedResponseStrategy) ReceiveData

func (r *WeightedResponseStrategy) ReceiveData(inv *invocation.Invocation, instances []*registry.MicroServiceInstance, serviceKey string)

ReceiveData receive data

Jump to

Keyboard shortcuts

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