这篇文章对 Zookeeper 的注册中心原理再深入研究一下,主要学习它的设计思想。
直接上文章目录:
1. 基本概念
1.1 什么是注册中心?
注册中心主要有三种角色:
服务提供者(RPC Server):在启动时,向 Registry 注册自身服务,并向 Registry 定期发送心跳汇报存活状态。
服务消费者(RPC Client):在启动时,向 Registry 订阅服务,把 Registry 返回的服务节点列表缓存在本地内存中,并与 RPC Sever 建立连接。
服务注册中心(Registry):用于保存 RPC Server 的注册信息,当 RPC Server 节点发生变更时,Registry 会同步变更,RPC Client 感知后会刷新本地 内存中缓存的服务节点列表。
最后,RPC Client 从本地缓存的服务节点列表中,基于负载均衡算法选择一台 RPC Sever 发起调用。
1.2 注册中心需要实现功能
根据注册中心原理的描述,注册中心必须实现以下功能,偷个懒,直接贴幅图: