Consul原理介绍

官方文档:https://www.consul.io/docs

Raft动画演示:http://thesecretlivesofdata.com/raft/

注册中心对比

Consul特点

服务发现、健康检查、Key/Value存储、安全服务通信(TLS证书)、多数据中心

架构


角色

  • 数据中心
    1. 数据中心内,Client和Server通过LAN Gosssip 进行通信,同步集群节点信息,其保障了拓扑变动以及控制信号的及时传递
    2. 数据中心之间通过WAN Gosssip通信
  • Client
    1. 每个服务部署一个Client
  • Server
    1. 通过Raft算法选举,实现数据一致
    2. 当RPC请求到达非leader时,请求会被转发到leader上。
    3. 注册信息到达leader时,通过Raft向follower同步,超过半数follower同步成功时才认为注册成功。
    4. 建议部署3-5台

原理

服务注册

Producer启动时,向Consul Client注册,Client通过RPC将注册信息转发到Server,服务信息保存在Server各个节点中,通过Raft实现一致性。

Client定期向Producer发送健康检查。检查通过才会注册。

服务调用

Consumer向Consul Client请求Producer,Client将请求转发到Server,Server返回Producer的IP、Port的临时表,Consumer从中任选一个发起请求(负载均衡)

相关推荐
m0_748234526 天前
【服务治理中间件】consul介绍和基本原理
中间件·consul
你的代码我的心8 天前
docker下部署kong+consul+konga 报错问题处理
docker·kong·consul
青云交12 天前
Java 大视界 -- 云计算时代 Java 大数据的云原生架构与应用实践(86)
java·大数据·kubernetes·云计算·consul·云原生架构·智能金融风控
Ares-Wang16 天前
NetCore Consul动态伸缩+Ocelot 网关 缓存 自定义缓存 + 限流、熔断、超时 等服务治理 + ids4鉴权
consul
白露与泡影19 天前
注册中心不知选哪个?Zookeeper、Eureka、Nacos、Consul和Etcd 5种全方位剖析对比
zookeeper·eureka·consul
encoding-console1 个月前
docker安装consul并启动的详细步骤
docker·容器·consul
三天不学习1 个月前
Net Core微服务入门全纪录(三)——Consul-服务注册与发现(下)
微服务·架构·consul
m0_748233641 个月前
【服务治理中间件】consul介绍和基本原理
中间件·consul
三天不学习1 个月前
.Net Core微服务入门全纪录(二)——Consul-服务注册与发现(上)
微服务·.netcore·consul
Archy_Wang_11 个月前
ASP.NET Core 实现微服务 - Consul 配置中心
微服务·asp.net·consul