zookeeper学习
Zookeeper学习记录。
概述
简介
zookeeper是一个为分布式应用程序提供的一个分布式开源协调服务框架。是Google的Chubby的一个开源实现,是Hadoop和Hbase的重要组件。主要用于解决分布式集群中应用系统的一致性问题。
提供了基于类似Unix系统的目录节点树方式的数据存储。
可用于维护和监控存储的数据的状态的变化,通过监控这些数据状态的变化,从而达到基于数据的集群管理。
提供了一组原语(机器指令),提供了java和c语言的接口。
特点
分布式集群,一个领号者(Leader),多个跟随者(follower)
集群中只要有半数以上的节点存活,Zookeeper集群就能正常服务。
全局数据一致性:每个server保存一份相同的数据副本,client无论连接到那个server,数据都是一致的。
更新请求按顺序进行:来自同一个client的更新请求按其发送顺序依次执行
数据更新的原子性:一次数据的更新要么成功,要么失败
数据的实时性:在一定时间范围内,client能读到最新数据。