zoukankan      html  css  js  c++  java
  • Consul 简介

    一、Consul 能做什么?

    Consul包含很多组件,总体来数,Consul是一种服务发现和配置工具

    1、服务发现:一个客户端提供自己的服务,例如api服务,或者mysql服务,另一个客户端就可以利用Consul通过DNS或者http来发现这些服务的提供者。

    2、健康检查:Consul可以提供多种(script 、http、tcp、ttl)健康检查。结合服务发现。

    3、K/V存储:动态配置、一致性协调、leader选举、特征标记等,Consul的HTTP的API使开发者更好的使用。

    4、多数据中心:Consul创造性的提供了多数据中心机制。这就意味着使用者不必在创建多余的虚拟层来应用多个分区。 

    Consul是分布式的(P),高可用系统(A)。每一个Consul服务提供节点,都运行着一个Consul代理,Consul代理并不意味着必须发现其它的服务,或者进行相应的数据操作,代理只需要对健康检查负责。代理连接一个或者多个Consul服务端,Consul服务端存储,复制数据,选取leaader。虽然Consul服务端可以单例运行,但是通常建议每个数据中心3到5个实例集群运行,以防数据丢失。

    二、区别zookeeper: 

    1、zookeeper 使用临时节点特性来用于服务发现(当服务断开时,临时节点删除)

    这种服务发现机制比心跳检测更精致,复杂,但是同样也有一些固有的扩展性问题和增加客户端复杂性,所有的服务端都必须维持同zookeeper的活动连接。

    2、Consul 的服务发现机制

    Consul在集群的每一个节点都运行一个客户端,这些客户端就是 gossip pool(分布式健康检查 分布式健康检查)的一部分,gossip协议实现在服务宕机发现上很高效,无论服务集群中服务数多少,Consul可以通过简单的检查服务返回200状态来进行健康检查。

  • 相关阅读:
    Oracle中的to_date参数含义
    Oracle 中 IW和WW 有何差别
    iBaits.Net(1):简介与安装
    带你逛逛诺基亚芬兰总部:满满都是回忆啊
    LINQ的分组聚合技术
    WPF的Docking框架 ——AvalonDock
    iBatis.Net(3):创建SqlMapper实例
    iBatis.Net(2):基本概念与配置
    C#异步编程及其同步机制
    web使用
  • 原文地址:https://www.cnblogs.com/niejunlei/p/6514859.html
Copyright © 2011-2022 走看看