Consul vs. SkyDNS

Consul vs. SkyDNS

SkyDNS是一种旨在提供服务发现的工具。它使用多个中心服务器,这些服务器具有高度一致性和容错性。节点使用HTTP API注册服务,并且可以通过HTTP或DNS进行查询以执行发现。

Consul非常相似,但提供了功能的超集。 Consul还依赖多个中央服务器来提供强大的一致性和容错能力。节点可以使用HTTP API或使用代理注册服务,查询通过HTTP或DNS进行。

但是,这些系统在许多方面存在差异。 Consul提供了更丰富的健康检查框架,支持任意检查和高度可扩展的故障检测方案。 SkyDNS依赖于天真的心跳和TTL,这种方法具有已知的可扩展性问题。此外,与Consul执行的丰富健康检查相比,心跳仅提供有限的活跃度检查。

在SkyDNS中使用“区域”可以支持多个数据中心;但是,数据是从单个群集中管理和查询的。如果服务器在数据中心之间拆分,则复制协议将受到很长的提交时间的影响。如果所有SkyDNS服务器都位于中央数据中心,则连接问题可能导致整个数据中心失去可用性。此外,即使没有连接问题,查询性能也会受到影响,因为必须始终在远程数据中心中执行请求。

Consul支持多个开箱即用的数据中心,它故意将托管数据作为每个数据中心的范围。这意味着每个数据中心都运行一个独立的服务器群集。如有必要,请求将转发到远程数据中心;数据中心内的服务请求永远不会通过WAN,数据中心之间的连接问题不会影响数据中心内的可用性。此外,一个数据中心的不可用性不会影响任何其他数据中心中的服务发现。

猜你喜欢

转载自blog.csdn.net/longgeqiaojie304/article/details/85258482
今日推荐