浅谈常用的注册中心(Zookeeper,Nacos,Eureka)

CAP原则

根据分布式CAP理论,即一致性consistency,可用性availability,分区容错partition-tolerance三个特性中,最多满足其中两个。

Eureka 满足AP两个特性,它实现的是最终一致性,当新的服务注册到集群中的一个eureka 上,此时这个服务挂掉了,那么刚刚注册的服务就无法同步到其他eureka 上也就无法被调用者使用。但是当eureka 重新启动后就可以恢复。

Zookeeper满足CP两个特性,集群中主服务挂掉后,会在子服务中选举新的注册服务,在选举过程中,注册服务对外是不可用的。

Nacos支持AP和CP模式,默认是AP模式与Eureka一样。

注册中心的工作原理

拿Eureka来捋一下注册中心工作原理,Eureka整体上可以分为两个主体:Eureka Server 和 Eureka Client。

注册中心服务端主要对外提供了三个功能:服务注册,提供注册表,同步状态

服务注册和续约

Eureka Client 向 Eureka Server 注册时,它提供自身的元数据,比如 IP 地址、端口,运行状况指示符 URL,主页等。Eureka Client 会每隔 30 秒发送一次心跳来续约。通过续约来告知 Eureka Server 该 Eureka Client 运行正常,没有出现问题。

剔除机制

默认情况下,如果 Eureka Server 在 90 秒内没有收到 Eureka Client 的续约,Server 端

你可能感兴趣的:(spring,cloud,alibaba)