zookeeper
rickiyang
这个作者很懒,什么都没留下…
展开
-
zookeeper基本知识入门(一)
之前我们在搭建hadoop分布式环境的时候用到过Zookeeper注册hadoop服务。那么到底Zookeeper在分布式环境中发挥了什么作用呢,这次我们就来讨论这个问题。 在分布式系统中通常都会有多台机器构成一个集群来对外提供服务,对外来说有几台机器在提供服务它并不关心,那么对内而言组成集群的机器如何互相协调保持一致这是个问题。Zookeeper将提供这样的一个功能–分布式协调技术。 1...原创 2018-04-14 21:03:14 · 347 阅读 · 0 评论 -
Zookeeeper环境搭建(二)
zk一般是有2n+1个节点组成的集群。在Zookeeper服务有两个角色,一个是leader,负责写服务和数据同步;剩下的是follower,提供读服务。(为什么是2n+1个节点请看paxos算法) leader实效后会在follower中重新选举新的leader。(paxos算法) 每个follower都和leader有链接,接受leader的数据更新操作。(zab算法) 客户端可以连接到每...原创 2018-04-14 21:04:33 · 431 阅读 · 0 评论 -
Zookeeper的命令行操作(三)
Zookeeper的命令行操作 1、 ZooKeeper服务命令 在准备好相应的配置之后,可以直接通过zkServer.sh 这个脚本进行服务的相关操作 1. 启动ZK服务: sh bin/zkServer.sh start 2. 查看ZK服务状态: sh bin/zkServer.sh status 3. 停止ZK服务: sh bin/zkServer.s...原创 2018-04-14 21:05:51 · 559 阅读 · 0 评论 -
Zookeeeper应用实践(四)
zk的应用还是非常广泛的。 1. 分布式锁 单机环境下的锁还是很容易去实现的,但是在分布式环境下一切都变得不是那么简单。zk实现分布式锁的原理还简单,因为在分布式环境中的zk节点的变化会被每一台机器watch,有任何变化都会被通知,所以我们可以利用这个机制: 我们创建一个根节点Lock,在获取锁的时候在该节点下创建临时顺序节点,释放锁的时候删除该临时节点。客户端调用createNode...原创 2018-04-14 21:07:39 · 449 阅读 · 0 评论 -
Zookeeper开源客户端Curator的使用
开源zk客户端-Curator 创建会话: RetryPolicy retryPolicy = new ExponentialBackoffRetry(1000,3); CuratorFramework client = CuratorFrameworkFactory.newClient("192.168.131.128:2181",retryPolicy); 使用CuratorFrame...原创 2018-05-06 15:16:16 · 610 阅读 · 0 评论