一、Zookeeper介绍
Zookeeper是一个分布式协调服务,它提供了配置管理、分布式锁、集群服务等功能。在大数据领域中kafka、Hbase都是使用Zookeeper作为分布式协调服务,来管理集群状态的。知名的Rpc框架Dubbo也是用Zookeeper作为配置管理组件的。
二、Zookeeper的作用
1、集群管理
在分布式集群中,可能由于网络原因、机器故障等情况,需要动态的增删节点,那么集群中节点变更,节点感知就需要一个类似于中心化的服务将变更的节点通知到集群里的各个角色。这时候zookeeper就可以排上用场了,在kafka中,zookeeper用来管理kafka集群的信息,以及consume相关的信息。
2、分布式锁
分布式锁的场景主要也是用在分布式服务中,多节点中想要锁住共享资源,zookeeper是其中的一个选择,使用zookeeper实现分布式锁主要用了它的临时序列节点的机制
3、配置管理
在分布式的应用中,具有非常多配置,怎样做到多节点统一配置,统一更新那就需要一个中心化的协调服务,将配置的变更通知到集群中的所有节点,zookeeper可以做到这一点,说到配置管理,还有一个很强大的开源组件Apollo,在配置管理方面,它更加强大。另外知名的rpc框架dubbo将调用方和服务方相关配置存储到zookeeper中,用于实现服务治理。
三、分布式协调
1、数据模型和名称空间
Zookeeper的数据模型比较简单,类似于操作系统文件目录结构,具有配额限制,权限控制,层次结构等。
2、分布式环境下如何协调
分布式环境下各个进程之间通过共享的分层名称空间进行相互协调,zookeeper的数据是存储在内存中,因此它具有高吞吐量和低延迟的特性。
更多关于“网络安全培训”的问题,欢迎咨询千锋教育在线名师。千锋教育多年办学,课程大纲紧跟企业需求,更科学更严谨,每年培养泛IT人才近2万人。不论你是零基础还是想提升,都可以找到适合的班型,千锋教育随时欢迎你来试听。