![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
分布式
技术很low的瓜贼
日行一善,只求一赞
展开
-
Zookeeper中NullPointerException
#Zookeeper中出现java.lang.NullPointerException问题示例:具体产生错误地址:问题解析:查看String的源码可以发现,它将bytes[]进行转变的时候,会考虑长度,而我们的节点中,只存在节点,但是没有节点数据,它的转化就是失败的,所以会报空指针异常。解决办法:先为节点添加数据,然后在进行节点数据的查询。...原创 2022-01-14 10:35:21 · 1586 阅读 · 0 评论 -
Zookeeper中的选举机制
Zookeeper的选举机制:半数机制:集群中半数以上机器存活,集群可用。(Zookeeper通常情况安装奇数台服务器)在Zookeeper的配置文件中没有指定leader和followerZookeeper中的leader是通过Zookeeper内部的选举机制临时产生,产生的该节点为leader,其余为follower选举原理:(以五台服务器为例)服务器1先投票,首先将票投给自己,自己投票后发现自己的票数没有过半,无法成为leader,然后将自身票数转移给下一台服务器(服务器2)服务器原创 2022-01-12 21:44:34 · 477 阅读 · 0 评论 -
Zookeeper监听器原理
Zookeeper监听器的工作原理:原理图:原理解析:在main()方法创建Zookeeper客户端的同时会创建两个线程,一个负责网络通信,一个负责监听监听事件会通过网络通信发送给Zookeeper集群Zookeeper获得注册的监听事件以后,将监听事件添加到监听列表中Zookeeper监听到 数据变化或 路径变化,将消息返回给监听线程监听线程在内部调用process()方法对于监听来说常见的监听有两种:监听节点数据的变化:get path监听子节点增减的变化:Is path原创 2022-01-12 21:27:48 · 598 阅读 · 0 评论