【发布时间】:2021-01-15 03:03:48
【问题描述】:
我不明白consul的agentapi和catalogapi有什么区别
虽然consul文档一直强调agent和catalog不能混淆,但确实有很多看起来相似的方法,比如:
什么时候应该使用catalog或agent(就像上面的http url)?
哪一种适合高频通话?
【问题讨论】:
标签: consul
我不明白consul的agentapi和catalogapi有什么区别
虽然consul文档一直强调agent和catalog不能混淆,但确实有很多看起来相似的方法,比如:
什么时候应该使用catalog或agent(就像上面的http url)?
哪一种适合高频通话?
【问题讨论】:
标签: consul
Consul 旨在为服务注册到 Consul 客户端代理,该代理在部署服务的同一主机上运行。 /v1/agent/service/ 端点为您提供了一种与向您正在与之通信的特定 Consul 代理注册的服务交互的方式,并针对该代理注册新服务。
数据中心的每个 Consul 代理都将其注册的服务信息提交给 Consul 服务器。服务器汇总此信息以形成服务目录 (https://www.consul.io/docs/architecture/anti-entropy#catalog)。 /v1/catalog/ 端点返回该聚合信息。
我想从反熵文档中调出这句话。
Consul 将代理的状态视为权威;如果代理和目录视图之间存在任何差异,将始终使用代理本地视图。
目录 API 可用于从目录中注册或删除服务/节点,但通常这些操作应针对客户端代理(使用 /v1/agent/ API)执行,因为它们是权威的在 Consul 中获取数据。
/v1/agent/ API 应该用于高频调用,并且应该针对与应用程序在同一节点上运行的本地 Consul 客户端代理发出,而不是直接与服务器通信。
【讨论】: