加入收藏 | 设为首页 | 会员中心 | 我要投稿 拼字网 - 核心网 (https://www.hexinwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

ZooKeeper的使用场景细分

发布时间:2021-05-22 10:34:58 所属栏目:教程 来源:互联网
导读:注册、配置中心 像 Spring Cloud、Dubbo 等服务节点的信息,比如机器列表等,一般数据集都比较小,但是一致性却要求非常的高,而且数据经常会发生变动,这是非常

像 Spring Cloud、Dubbo 等服务节点的信息,比如机器列表等,一般数据集都比较小,但是一致性却要求非常的高,而且数据经常会发生变动,这是非常适合 ZooKeeper 的一种场景。

通过将这样的信息发布到 ZooKeeper上,那么这些数据一旦有变动,应用节点可以获得获取数据的一致视图。

分布式协调/通知

ZooKeeper有Watcher注册与异步通知机制,可以在不同的服务节点,甚至是不同的系统间进行协调。这非常像传统消息队列中的 Pub/Sub 机制,但由于 ZooKeeper的实时性,加上数据强一致性,使得数据的分发变的非常可靠。

 选举

所谓的选举,就是在众多的服务节点中,选举出一个具有最终决定权的领导,这在服务集群中,一般称为Master。比如,一项服务需要对外暴露接口,但是要保证这个服务的高可用。当正在服务的节点当机之后,需要采用选举功能,从备份的机制中,选择出一台来,继续进行服务。剩余的机器,则称为这台被选举机器的备份。

分布式锁

分布式锁,是为了协调分布式环境下的共享资源而设定的锁。比如,你有一个定时服务有两个节点,但要求在执行时只有一个节点进行业务逻辑的计算。这时候,任务就变成了共享资源,在获取任务的时候,就可以采用互斥的手段来保证彼此之间的干扰,保证一致性。

分布式队列

ZooKeeper 也可以实现分布式队列,比如对一批任务的执行,先处理完前面的任务,再处理后面的任务。这个时候,就可以将任务信息存放到 ZooKeeper中。

它与消息队列的队列概念相似,但比较适合小批量的、有严格顺序的任务。

(编辑:拼字网 - 核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!