Documentation ¶
Overview ¶
Package selector 提供负载均衡的相关功能
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Peer ¶
type Peer interface { encoding.TextMarshaler encoding.TextUnmarshaler // Addr 返回节点地址 // // 返回值应该是一个有效的地址,且要满足以下条件: // - 不能以 / 结尾; // 比如 https://example.com:8080/s1、/path。 Addr() string }
Peer 后端节点对象
NOTE: 节点的序列化内容中不能包含半角分号(;)。
type Updateable ¶
Updateable 可动态更新节点信息的负载均衡接口
func NewRandom ¶
func NewRandom(weight bool, cap int) Updateable
NewRandom 返回随机算法的负载均衡实现
weight 是否采用加权算法,如果此值为 true, 在调用 [Selector.Add] 时参数必须实现 WeightedPeer。
func NewRoundRobin ¶
func NewRoundRobin(weight bool, cap int) Updateable
NewRoundRobin 轮询法
weight 是否采用加权算法,如果此值为 true, 在调用 [Selector.Add] 时参数必须实现 WeightedPeer。
type WeightedPeer ¶
WeightedPeer 带权重的节点对象
func NewWeightedPeer ¶
func NewWeightedPeer(addr string, weight int) WeightedPeer
Click to show internal directories.
Click to hide internal directories.