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从中任选一个发起请求(负载均衡)

相关推荐
Msshu1232 天前
快充诱骗取电芯片XSP26A 支持全协议取电+串口发送充电器功率+共用D+D-网络
mongodb·postgresql·etcd·flume·consul·kylin
YOU OU5 天前
Spring Cloud Consul
spring cloud·consul·java-consul
吉甫作诵22 天前
Prometheus 安装配置:Consul 自动发现与 Thanos Sidecar 持久化
prometheus·consul
软糖姐姐1 个月前
python eureka服务发现_python与consul 实现gRPC服务注册-发现
python·consul·grpc·服务注册·发现
南大白2 个月前
Consul 与 Nacos 核心差异总结
consul
2601_960906722 个月前
中国智能投影市场(不含激光电视)全渠道销量同比暴跌21.4%
kafka·etcd·consul·storm
希望永不加班3 个月前
SpringBoot 服务注册与发现:Nacos/Consul/Eureka
java·spring boot·eureka·consul·java-consul
成为你的宁宁4 个月前
【基于 Consul 实现 Prometheus 服务发现部署与实战】
prometheus·consul
白露与泡影4 个月前
轻量级微服务发布系统:Traefik + Nomad + Consul
微服务·架构·consul
日取其半万世不竭4 个月前
Consul:服务发现与健康检查,微服务架构的注册中心
架构·服务发现·consul