提供的服务主要包括:统一命名服务、统一配置管理、统一集群管理、服务节点动态上下线、软负载均衡等。😀
统一命名服务:
在分布式环境下,需要经常对应用/服务进行统一命名,便于识别。列如:IP不同意记住,而域名更加容易记住。
统一配置管理:
在分布式环境中,有关配置文件的同步是非常常见的,因为一般要求一个集群中,所有节点的配置信息是一致的。所以对配置文件修改之后,希望可以快速同步到其他节点。
这样统一配置管理可以交给Zookeeper来实现:
- 可将配置信息写入Zookeeper的一个ZNode
- 各个Client监听这个ZNode
- 一旦ZNode中的信息被修改,Zookeeper将通知各个Client
统一集群管理:
在分布式环境中,实时掌握每个节点的状态是必要的。这样可以根据节点的实时状态做出一些调整。
Zookeeper可以实时监控节点状态变化:
- 可以将节点信息写入Zookeeper的一个ZNode中
- Client监听这个ZNode可以实时获取节点状态变化。
服务器动态上下线:客户端可以实时洞察到服务器上下线的变化。
软负载均衡:
在Zookeeper中记录每台服务器的访问器,让访问数最少的服务器去处理最新的客户端请求。