zookeeper锁问题

Zookeeper中的羊群效应是指当一个节点变化时,所有监听的客户端都会收到通知并争抢资源,可能导致系统性能下降。为解决这个问题,引入了公平锁,通过排队方式减少竞争,确保不会影响Zookeeper的其他任务。非公平锁则可能导致更多的客户端争抢,增加网络通信消耗,如JUC中的signal操作。
摘要由CSDN通过智能技术生成

zookeeper锁导致的羊群效应当一个节点变化是 监听该节点的客户端都会收到消息,然后开始争抢  这个过程会影响zookeeper的其他任务。

然后zookeeper公平锁改进,是通过排队的方式,每个客户端只监听一个节点变化,这不会影响zookeeper正常工作

然后我们就想到公平锁与非公平锁

对于非公平锁,他这里是要通知的客户端多,争抢的也多,而对于juc的signal或者说signalall  来说消耗要打,因为zookeeper的通知涉及到了网络通信

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Zookeeper是一种基于Zookeeper实现的分布式。它的原理是通过创建临时节点来实现的唯一性,并利用事件通知机制来实现的互斥性。 具体来说,Zookeeper节点路径的唯一性保证了的唯一性。当一个客户端请求获取时,它会在Zookeeper上创建一个临时节点作为的标识。其他客户端在请求获取时,会检查是否有相同路径的临时节点存在,如果存在则表示已经被其他客户端获取,等待直到被释放。 另外,Zookeeper的事件通知机制也是实现分布式的关键。当一个客户端获取到后,它会一直保持对该临时节点的监听。如果这个节点被删除(表示被释放),Zookeeper会发送一个事件通知给所有对该节点进行监听的客户端,其他客户端收到通知后可以再次尝试获取。 通过这种方式,Zookeeper实现了分布式环境下的互斥访问,确保了同一时间只有一个客户端能够获取并执行对应的操作。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [zookeeper实现分布式](https://blog.csdn.net/u014732205/article/details/127838098)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值