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 服务注册表.