Zookeeper 在构建大型系统中的作用

Zookeeper是一个高可用的分布式协调服务,常用于数据发布订阅、注册中心、选举Leader、心跳探测和分布式锁等场景。在Dubbo中,Zookeeper作为服务注册中心实现动态DNS解析,提供服务提供者和调用者的解耦。此外,Zookeeper的选举功能通过Curator框架实现,确保高可用。尽管Zookeeper性能和选举效率受到挑战,但理解其应用场景对于开发至关重要。
摘要由CSDN通过智能技术生成

这篇文章主要聊一聊,Zookeeper 在业界构建系统时,一般承担什么样的功能,注册中心?分布式锁?亦或是 Name Serivce 等

什么是 Zookeeper

Zookeeper 是 Yahoo! 基于 Google Chubby 论文的思想,结合自己的实践经验开发而来,2011 年成为 Apache 顶级项目,本质上是一个高可用的分布式协调服务(highly reliable distributed coordination),应用可以基于它实现数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Leader 选举、分布式锁等一系列服务。

应用场景

那 Zookeeper 的常见应用场景有哪些呢?这里列举几个典型应用。

数据发布订阅

Zookeeper 采用推拉结合的方式,客户端可以在 Zookeeper 上对感兴趣的节点注册 Watcher,而服务端借助 Watcher 机制可以方便地向客户端推送数据变更的事件通知,然后客户端会发起请求拉取最新数据。这样的特性有诸多应用场景,例如动态开关、监控、配置信息等,它们具有数据量小,时效性要求高的特点。这里受限于 Zookeeper 本身的性能瓶颈,目前配置中心这种服务越来越倾向于去 zk 化,改用其他的实现方式。

注册中心

例如 Dubbo 支持以 Zookeeper 作为服务注册中心,这就是一种动态 DNS 解析服务,借此服务的提供者和调用者间可以解耦,批次的更改可以通过注册中心做到无感知变更,需要做的只是替换服务的节点地址,再通过 Zookeeper 将变更推送到服务的调用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值