gRPC 命名和发现
etcd 提供了一个 gRPC 解析器来支持替代名称系统,从 etcd 获取端点以发现 gRPC 服务。底层的机制是基于观察带有服务名称前缀的键的更新。
用 go-grpc 使用etcd发现
etcd 客户端提供了一个 gRPC 解析器,用于使用 etcd 后端解析 gRPC 端点。解析器使用 etcd 客户端初始化并给出解析解析的目标:
管理服务端点
etcd 解析器将解析目标加"/"(如"my-service/")的前缀下,并带有 json编码 go-grpc naming.Update
值的所有键作为潜在的服务端点对待。通过创建新的键将端点添加到服务中,并通过删除键从服务中删除他们。
添加端点
新的端点可以通过 etcdctl
添加到服务中:
etcd 客户端的 GRPCResolver.Update
方法可以同样用匹配 'Addr' 的键注册新的端点:
删除端点
通过 etcdctl
可以从服务中删除主机:
etcd 客户端的 GRPCResolver.Update
方法可以同样支持删除端点:
带租约注册端点
带租约注册端点确保如果主机不能维持 keepalive 心跳(例如,它的机器宕机了),它将从服务中删除:
Last updated