package
0.0.0-20241209060253-74832168667a
Repository: https://github.com/joyparty/nodehub.git
Documentation: pkg.go.dev

# Functions

NewBalancer 创建负载均衡器.
NewRegistry 创建服务注册表.
RegisterBalancer 注册负载均衡器.
WithGRPCDialOptions 设置grpc.DialOption.
WithKeyPrefix 设置服务条目key前缀.
WithLeaseTTL 服务心跳超时,超过此时长未检测到服务心跳,即表明服务离线 单位 秒,默认10秒.

# Constants

AutoAllocate 自动分配,第一次请求时,如果还没有分配,会根据负载均衡策略自动选择一个可用节点.
BalancerIDHash 根据客户端ID哈希.
BalancerIPHash 根据客户端IP地址哈希.
BalancerNewest 使用最新启动的那个节点.
BalancerOldest 使用最早启动的那个节点 可用于单点服务的备用节点高可用切换 当最初使用的主节点下线后,会按照启动顺序,依次启用后续的备用节点.
BalancerRandom 随机.
BalancerRoundRobin 加权轮询.
ClientAllocate 客户端分配,客户端请求时附带的nodeID会被记录下来,后续即使不指定nodeID,也会被分配到同一个节点.
NodeDown 下线,不接受任何请求.
NodeLazy 不接受新的请求.
NodeOK 正常.
ServerAllocate 服务端分配,只有服务器端分配好节点之后,客户端才能够访问.

# Variables

ErrNodeNotFoundOrDown 没有可用节点或节点已下线.
ErrNoNodeAvailable 没有可用节点.

# Structs

GRPCEntry gRPC服务发现条目.
GRPCServiceDesc gRPC服务.
NodeEntry 节点服务发现条目.
Registry 服务注册表.

# Interfaces

Balancer 负载均衡器.
Session 会话.

# Type aliases

BalancerFactory 负载均衡器工厂.
NodeState 节点状态.