![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
zookeeper
darkness0604
这个作者很懒,什么都没留下…
展开
-
zookeeper第七课-分布式锁实现
之前学习redis的时候,我们也提及过分布式锁的概念。 但也谈及了redis想要实现分布式锁的复杂度,虽然redis的确很快,但其实并不是那么的可靠,而想要达到可靠,就需要落地持久化,反而降低了性能。。。 而基于zookeeper,其实是可以比较简单的实现一个比较可靠的分布式锁。 下面我们来聊一聊,想要实现一个分布式锁,我们基于zookeeper应该注意些什么? 1、作为锁来说,肯定是需要保证同...原创 2020-03-18 21:17:50 · 235 阅读 · 0 评论 -
zookeeper第六课-简易版配置中心实现
使用zookeeper作为配置中心并不是一个新鲜事,在许多的应用中都有这样的应用, 举一个最显著的例子,dubbo就是基于zookeeper实现的配置节点信息的存放。 本次我们也依次为方向,实现一个简易版的配置中心。 代码实现 首先创建一个zookeeper的单例工具类: public class ZkUtil { //使用/testConfig作为我们的配置工作路径 priva...原创 2020-03-17 21:07:24 · 406 阅读 · 0 评论 -
zookeeper第五课-watch与API实操
有条件的更新和监视-watch ZooKeeper支持watch的概念。客户端可以在znode上设置watch。znode更改时,将触发并删除监视。 触发监视后,客户端会收到一个数据包,说明znode已更改。如果客户端与ZooKeeper服务器之一之间的连接断开,则客户端将收到本地通知。 zookeeper提供了一种监控数据节点变动的机制。 一般我们监控一个东西,一般有2种方式: 1、几秒一轮询...原创 2020-03-15 21:47:12 · 209 阅读 · 0 评论 -
zookeeper第四课-分布式协调原理
zookeeper作为一个分布式协调服务,一定是要满足扩展性,可靠性,时序性的。 并且作为一个分布式环境中的协调者,它的速度将非常影响整体的速度,因此它也必然需要是快速的。 扩展性 基本上,每一个分布式应用的架构体系的构成都会有角色的概念。 zookeeper也是如此,它有三个角色: Leader Follower Observer 之前我们已经提及过了leader和follower,那obse...原创 2020-03-14 21:58:37 · 321 阅读 · 0 评论 -
zookeeper第三课-通信,选举机制
节点通信 回顾我们之前配置zookeeper时,分别对每一个实例指定了2个端口号,1个是2888,一个是3888。 server.1=node01:2888:3888 server.2=node02:2888:3888 server.3=node03:2888:3888 server.4=node04:2888:3888 2888: leader的暴露端口,用于接受follower的写请求和...原创 2020-03-13 21:13:05 · 1647 阅读 · 0 评论 -
zookeeper第二课-环境搭建和使用,用途分析
此次实验选用4台机器node1,node2,node3,node4 四台机器分别需要安装jdk,并设置JAVA_HOME的环境变量。 环境搭建 node01: 在zookeeper.apache.org下载zookeeper wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.5.7/apache-zookeeper-3.5.7.t...原创 2020-03-12 21:32:15 · 315 阅读 · 0 评论 -
zookeeper第一课-基础介绍
官网:http://zookeeper.apache.org/ 继redis之后,今天开始对zookeeper进行学习。 学习zookeeper我们可以参照官网文档进行学习 https://zookeeper.apache.org/doc/r3.5.7/zookeeperOver.html 有这么一句描述: ZooKeeper: A Distributed Coordination Service...原创 2020-03-11 21:23:23 · 243 阅读 · 0 评论