领事服务定义地址和服务地址之间的区别

领事服务定义json如下

{
    "Address": "192.168.10.10",
    "TaggedAddresses": {
      "lan": "192.168.10.10",
      "wan": "10.0.10.10"
    },
    "CreateIndex": 51,
    "ModifyIndex": 51,
    "Node": "foobar",
    "ServiceAddress": "172.17.0.3",
    "ServiceEnableTagOverride": false,
    "ServiceID": "32a2a47f7992:nodea:5000",
    "ServiceName": "foobar",
    "ServicePort": 5000,
    "ServiceTags": [
      "tacos"
    ]
}

现在根据https://www.consul.io/docs/agent/http/catalog.html#catalog_service上提供的文档

地址和服务地址的定义如下:

  • 地址 :服务注册的Consul节点的IP地址
  • ServiceAddress :服务主机的IP地址 - 如果为空,则应使用节点地址
  • A.这是否意味着地址是领事服务器节点的地址,服务地址是服务驻留的节点的地址?

    要么

    B.这是否意味着地址是居住在该服务中的领事代理人的地址。 如果是这种情况,这是否意味着地址和服务地址相同?

    以上哪一项是正确的?


    我想,这个Address是Consul代理的地址,ServiceAddress是用来访问这个服务的地址。 这可以是相同的地址,但它们也可以不同。

    例如,您可以让一台主机具有多个接口,其中一个用于使Consul座席彼此交互,另一个用于访问您的服务。

    或者,您可以拥有一个包含多个使用Docker的微服务的节点。 您可以使用此节点的地址启动一个Consul Agent,并注册许多运行在容器中的微服务,并通过容器内部IP地址相互通信。 在这种情况下,您将获得服务信息,其中Address等于节点的IP,ServiceAddress等于具有服务的容器的IP。

    链接地址: http://www.djcxy.com/p/93985.html

    上一篇: Difference between Consul Service definition Address and Service Address

    下一篇: HTML5 <input type=“date”>