Documentation
¶
Overview ¶
包 gsel 提供选择器的定义和实现。 md5:009a7633736cc0b4
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Builder ¶
Builder 在运行时创建并返回选择器。 md5:ffd073ea24966ab1
func NewBuilderLeastConnection ¶
func NewBuilderLeastConnection() Builder
func NewBuilderRandom ¶
func NewBuilderRandom() Builder
func NewBuilderRoundRobin ¶
func NewBuilderRoundRobin() Builder
func NewBuilderWeight ¶
func NewBuilderWeight() Builder
type DoneInfo ¶
type DoneInfo struct {
// Err 是RPC完成时伴随的错误。它可能为nil(即没有错误)。 md5:6f92d17caab8ccb5
Err error
// Trailer 包含了如果存在的话,RPC调用的追踪元数据。 md5:291f630111ba0776
Trailer DoneInfoMD
// BytesSent 表示是否已将任何字节发送到服务器。 md5:d9e7a45a59ef93ae
BytesSent bool
// BytesReceived表示是否已从服务器接收任何字节。 md5:76160cbbde4b2264
BytesReceived bool
// ServerLoad 是从服务器接收到的负载。它通常作为尾部元数据的一部分发送。
//
// 目前唯一支持的类型是 *orca_v1.LoadReport。
// md5:631ea6798c4714cb
ServerLoad interface{}
}
DoneInfo包含done的额外信息。 md5:fe59ad436c6d2598
type DoneInfoMD ¶
type DoneInfoMD interface {
// Len 返回md中的项目数量。 md5:dd1e6c01d830a7fd
Len() int
// Get 获取指定键的值。
//
// 在对 md 进行搜索之前,k 会被转换为小写。
// md5:cd83da607a1a524c
Get(k string) []string
// Set 使用一系列值设置给定键的值。
//
// 在存储到 md 之前,k 将被转换为小写。
// md5:723075d936727645
Set(key string, values ...string)
// Append 将值添加到键 k,但不会覆盖已经存储在该键上的内容。
//
// 在存储到 md 中之前,k 会被转换为小写。
// md5:8b748588b95754ce
Append(k string, values ...string)
// Delete 删除给定键 k 的值,该键在从 md 中删除之前会被转换为小写。
// md5:fa165ee7e187c245
Delete(k string)
}
DoneInfoMD 是一个从元数据键映射到值数组的映射。 用户应使用以下两个便利函数 New 和 Pairs 来生成 MD。 md5:46c19d6d882119ab
type Selector ¶
type Selector interface {
// Pick 选择并返回服务。 md5:2719544a395c30f1
Pick(ctx context.Context) (node Node, done DoneFunc, err error)
// Update 更新服务到Selector中。 md5:8ca4ca3b3f8963c1
Update(ctx context.Context, nodes Nodes) error
}
用于服务均衡器的选择器。 md5:6331f98beb651e36
func NewSelectorLeastConnection ¶
func NewSelectorLeastConnection() Selector
func NewSelectorRandom ¶
func NewSelectorRandom() Selector
func NewSelectorRoundRobin ¶
func NewSelectorRoundRobin() Selector
func NewSelectorWeight ¶
func NewSelectorWeight() Selector
Click to show internal directories.
Click to hide internal directories.