乐趣区

关于zookeeper:Zookeeper常见使用场景

大抵来说,zookeeper 的罕用的应用场景如下:

  • 分布式协调
  • 分布式锁
  • 元数据 / 配置信息管理
  • HA 高可用性

分布式协调

这个其实是 zookeeper 很经典的一个用法,简略来说,就好比,你 A 零碎发送个申请到 mq,而后 B 零碎音讯生产之后解决了。那 A 零碎如何晓得 B 零碎的处理结果?用 zookeeper 就能够实现分布式系统之间的协调工作。A 零碎发送申请之后能够在 zookeeper 上 对某个节点的值注册个监听器,一旦 B 零碎解决完了就批改 zookeeper 那个节点的值,A 零碎立马就能够收到告诉,完满解决。

分布式锁

举个栗子。对某一个数据间断收回两个批改操作,两台机器同时收到了申请,然而只能一台机器先执行完另外一个机器再执行。那么此时就能够应用 zookeeper 分布式锁,一个机器接管到了申请之后先获取 zookeeper 上的一把分布式锁,就是能够去创立一个 znode,接着执行操作;而后另外一个机器也 尝试去创立 那个 znode,后果发现自己创立不了,因为被他人创立了,那只能等着,等第一个机器执行完了本人再执行。

元数据 / 配置信息管理

zookeeper 能够用作很多零碎的配置信息的治理,比方 kafka、storm 等等很多分布式系统都会选用 zookeeper 来做一些元数据、配置信息的治理,包含 dubbo 注册核心不也反对 zookeeper 么?

HA 高可用性

这个应该是很常见的,比方 hadoop、hdfs、yarn 等很多大数据系统,都抉择基于 zookeeper 来开发 HA 高可用机制,就是一个 重要过程个别会做主备 两个,主过程挂了立马通过 zookeeper 感知到切换到备用过程。

退出移动版