![](https://img-blog.csdnimg.cn/2021081708514218.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
zookeeper
zookeeper
桀骜浮沉
西安Java程序员
展开
-
zookeeper分布式锁设计
分布式锁设计业务需求:为售票机设计分布式锁 ,多太机器同时售票,保证每台机器当前售票业务结束后,才可以开始下一次售票 。思路:利用zookeeper临时有序节点的特性为每次售票生成唯一的识别(也就是00000000001,000000000002这种格式的字符串),对每个业务的识别进行排序后,设定排在第一个的识别为获取到锁的识别,只有获取到锁的售票业务才可以进行售票,否则就只能等待,直到排在前面的识别释放了锁(也就是前一个节点被删除),才可以获取到锁。创建锁的工具类public class MyLo原创 2020-09-01 14:08:15 · 178 阅读 · 0 评论 -
zookeeper集群搭建
zookeeper集群搭建我这个实在同一个服务器上搭建的zookeeper集群1.将zookeeper的文件复制三分cp -r zookeeper-3.4.6 zookeeper2181cp -r zookeeper-3.4.6 zookeeper2182cp -r zookeeper-3.4.6 zookeeper21832.进入zookeeper2181的conf目录下编辑如下,修改data目录路径,将端口号改为2181,复制下面内容到文件中server.1=192.168.164.13原创 2020-08-31 23:25:21 · 206 阅读 · 0 评论 -
zookeeper分布式生成唯一Id
zookeeper分布式生成唯一Id主要是利用临时有序节点生产的id来作为分布式系统的唯一Id代码public class GloballyUniqueId implements Watcher { //计数器对象 CountDownLatch CountDownLatch=new CountDownLatch(1); String IP="192.168.164.134:2181"; String defaultPath="/uniqueId"; ZooKe原创 2020-08-31 15:33:26 · 262 阅读 · 0 评论 -
zookeeper作为配置中心
zookeeper作为配置中心业务需求:zookeeper作为配置中心,对配置的信息进行监听,当配置内容发生改变时可以得到最新的配置信息创建配置中心所需节点代码public class MyConfigCenter implements Watcher { //计数器对象 CountDownLatch CountDownLatch=new CountDownLatch(1); String IP="192.168.164.134:2181"; ZooKeepe原创 2020-08-31 12:17:22 · 286 阅读 · 1 评论 -
watcher监听
watch监听watch特性![在这里插入图片描述](https://img-blog.csdnimg.cn/20200830150651598.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTc0MjAzMg==,size_16,color_FFFFFF,t_70#pic_centerwatch事件类型watch事原创 2020-08-31 11:24:03 · 372 阅读 · 0 评论 -
Java zookeeperAPI操控节点
目录zookeeper操控节点连接zookeeper新建节点world授权IP授权Auth授权digest授权异步方式创建节点修改节点同步异步删除节点同步异步同步异步查看子节点同步异步查看节点是否存在同步异步zookeeper操控节点连接zookeeperpublic static void main(String[] args) throws Exception { //计数器对象 final CountDownLatch latch = new CountDownLatch(1);原创 2020-08-30 12:34:52 · 537 阅读 · 0 评论 -
zookeeper命令
zookeeper命令quit:退出create 路径 “值”:创建节点并赋值(例如:create /test “test”)create -s 路径 “值”:创建有序节点并赋值(例如:create -s /ss “sssss”)create -s -e 路径 “值”:创建有序l临时节点并赋值(例如:create -s -e /ee “eeeeeeeeeeeee”)set 路径 “值”:修改节点的值set 路径 “值” 版本号:修改节点的值并控制版本号(版本号从节点创建时起被原创 2020-08-29 13:40:26 · 187 阅读 · 0 评论