关于ZooKeeper(四) 锁和异常

分布式锁实现

使用顺序znode为竞争锁的进程排序,首先指定一个持有锁的znode,成为leader,想要获得锁的其他进程作为leader的子节点,并顺序编号,最小编号的进程成为下一个leader


异常

每一个ZooKeeper操作都有两种声明异常

1) InterruptedException

操作被中断,抛出异常

并不一定时有故障,可能时操作被取消

2)KeeperException

ZK服务器发出一个错误信号,或者与服务器存在通信问题,抛出KeeperException

KeeperException三类

    > 状态异常:操作不能应用到znode,通常因为被另一个操作占用

    > 可恢复异常:同一个会话中可恢复的异常KeeperException.ConnectonLossException,丢失连接,尝试重新连接,会话可恢复

  > 不可恢复异常:会话失效,超时或者会话关闭KeeperException.SessionExpiredException,身份验证失败KeeperException.AuthFailedException


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值