注册中心的产生是基于用来解耦服务提供者(Provider)与消费者(Consumer)的关系,分布式设计架构下,众多的服务提供者的数量并不是动态不变的,在传统的静态LB的方案中,无法很好感知这种变化;
在分布式架构中,除了要考虑服务提供者与消费者的关系,还要考虑如何一系列更复杂的问题:
- 服务提供者注册后,如何被及时发现;
- 服务宕机后,如何及时下线;
- 服务调用异常时,如何进行有效规避雪崩问题的出现;
- 在大流量、大压力的情况下,如何进行有效的水平扩展;
- 注册中心如何实现自身的高可用;
目前,业界根据不同的需求和企业,主流的注册中心有eureka、consul、nacos、zookeeper。
eureka是
序号 | 比较项 | Eureka | zookeeper | Nacos | Consul |
1 | 集群结构 | 平级 | 主从 | 支持平级和主从 | 主从 |
2 | 集群角色 | 主人 | Leader、follower observer | leader、follower、candidate | server-leader、server以及client |
3 |