怎么查 Consul 中已登记的服务?
查看完整题解
参考回答
直接回答
GET /v1/catalog/services 返回所查数据中心的服务名和标签。要查看某个服务有哪些实例,可查目录的服务详情接口。只看当前 agent 管理的实例,用 GET /v1/agent/services。
讲清原理
目录列表适合盘点服务名。找到名称后,还要看有哪些实例通过了检查。要找这个服务当前通过健康检查的实例,可以查 /v1/health/service/<name>?passing=true。
例子与易错点
订单客户端查库存时应拿实例地址、端口与健康结果。只找到 inventory 这个名称,还不能证明有机器能接请求。
延伸阅读 用 Consul HTTP API 如何查到可用实例? · Consul 的 DNS 和 HTTP 发现接口各适合什么?
这道题,你掌握得怎么样?
掌握程度由你主动标记,阅读和收藏不会自动改变状态。