用 Consul HTTP API 如何查到可用实例?
查看完整题解
参考回答
直接回答
常用 GET /v1/health/service/inventory?passing=true 返回健康检查全部通过的库存实例。需要原始登记记录时查 GET /v1/catalog/service/inventory。
讲清原理
健康查询结果中有 Node、Service 和 Checks。调用时用 Service 里给出的地址和端口。服务地址为空时,按登记约定回退到节点地址。查询还受 ACL、数据中心与一致性模式影响。
例子与易错点
如果目录里有两台库存实例,健康查询只有一台,先核对另一台的检查结果。注册记录存在只能说明已经登记。
延伸阅读 怎么查 Consul 中已登记的服务? · 怎么通过 DNS 找到 Consul 服务? · Consul 的 DNS 和 HTTP 发现接口各适合什么?
这道题,你掌握得怎么样?
掌握程度由你主动标记,阅读和收藏不会自动改变状态。