zookeeper学习day01
1、zkAPI:(借助闭锁来实现)
1)创建闭锁对象 2)创建zk对象 3)连接zk客户端(连接成功执行countDown方法) 4)执行await方法(保证链接成功) 5)zk对象调用对应的方法
2、集群的搭建:
在一台服务器上安装好zk(解压压缩包“tar -xvf xxx”,复制conf文件夹下的zoo_sample.cfg为zoo.cfg,并编辑修改dataDir和增加集群服务器配置,在dataDir指定目录下新建并编辑myid文件,输入对应的服务器号,并退出)
将配置好的zk打包(tar -zcvf xxx),并发送到指定的服务器 scp -r xxx <username>@<server>:目标位置
修改myid和配置文件中的数字相匹配
挨个启动zk服务,查看进程是否启动(jps),查看集群是否启动成功(./zkServer.sh status)
经验:
zookeeper的前期学习以节点为主,包括客户端对节点的操作,和借助api对节点的操作。相关的操作按照增删改查进行复习:
创建节点:create [-e] [-s] 节点路径 节点内容 -s:代表顺序创建 -e:代表临时创建,与客户端断开连接后自动删除
删除节点:delete 节点路径名 一般不做删除操作,有实效的节点一般都设置成临时节点
更改节点: set 节点路径 节点内容:更改某个节点的内容
查询节点: ls 节点路径:查看子节点 get 节点路径 查看节点的具体信息
至于api的学习:
ZooKeeper zk = new ZooKeeper("ip地址:端口号",临时节点失效时间,监控器); //创建好zk对象之后:
创建节点:public String create(final String path, byte data[], List<ACL> acl,CreateMode createMode)
删除节点:public void delete(final String path, int version)
更改节点: public Stat setData(final String path, byte data[], int version)
查询节点: public byte[] getData(final String path, Watcher watcher, Stat stat)
ps:path:创建节点全路径
data:节点数据内容,类型是byte[]
acl : 代表的是权限,OPEN_ACL_UNSAFE表示的是所有人对该节点做CRUD
createMode: persistent:普通持久节点
ephemeral:普通临时节点
persistent_sequential:顺序持久节点
ephemeral_sequential:顺序临时节点
version:节点的版本号,既可以和当前节点版本号相同,也可以指定成-1(均可修改,建议使用)
zookeeper学习day01的更多相关文章
- zookeeper学习(上)
zookeeper学习(上) 在前面的文章里我多次提到zookeeper对于分布式系统开发的重要性,因此对zookeeper的学习是非常必要的.本篇博文主要是讲解zookeeper的安装和zookee ...
- ZooKeeper 学习笔记
ZooKeeper学习笔记 1. zookeeper基本概念 zookeeper是一个分布式的,开放源码的分布式应用程序协调服务,是hadoop和Habase的重要组件,是为分布式应用提供一致性服 ...
- 【分布式】ZooKeeper学习之一:安装及命令行使用
ZooKeeper学习之一:安装及命令行使用 一直都想着好好学一学分布式系统,但是这拖延症晚期也是没得治了,所以干脆强迫自己来写一个系列博客,从zk的安装使用.客户端调用.涉及到的分布式原理.选举过程 ...
- [转]ZooKeeper学习第一期---Zookeeper简单介绍
ZooKeeper学习第一期---Zookeeper简单介绍 http://www.cnblogs.com/sunddenly/p/4033574.html 一.分布式协调技术 在给大家介绍ZooKe ...
- zookeeper 学习资料
zookeeper 学习资料 学习资料 网址 Zookeeper 教程(菜鸟教程) https://www.w3cschool.cn/zookeeper/
- Zookeeper学习文章目录1
目录:参考文章如下 1.ZooKeeper学习第一期---Zookeeper简单介绍 2. ZooKeeper学习第二期--ZooKeeper安装配置 3. ZooKeeper学习第三期---Zook ...
- zookeeper学习(零)_安装与启动
zookeeper学习(零)_安装与启动 最近换了新的电脑,终于买了梦寐以求的macbook.最近也换了新的公司,公司技术栈用到了zookeeper.当然自己也要安装学习下.省的渣渣的我,被鄙视就麻烦 ...
- ZooKeeper学习笔记(二)——内部原理
zookeeper学习笔记(二)--内部原理 1. zookeeper的节点的类型 总的来说可以分为持久型和短暂型,主要区别如下: 持久:客户端与服务器端断开连接的以后,创建的节点不会被删除: 持久化 ...
- ZooKeeper学习笔记(一)——概述
zookeeper学习笔记(一)--概述 1. 概述 Zookeeper是一个开源的分布式的,为分布式应用提供协调服务的Apache项目.zookeeper从设计模式的角度来理解:是一个基于观察者设计 ...
随机推荐
- !!!常用SVG代码
http://www.w3school.com.cn/svg/svg_examples.asp svg实例 http://www.w3school.com.cn/svg/svg_reference.a ...
- 直接添加viewController中的view时的注意事项
直接添加viewController中的view时需要注意一个问题,比如: MyTestViewController *vc = [MyTestViewController new]; [self.v ...
- html css col-md-offset
有的时候,我们不想让两个相邻的列挨在一起,这时候利用栅格系统的列偏移(offset)功能来实现,而不必再定义margin值.使用.col-md-offset-*形式的样式就可以将列偏移到右侧.例如,. ...
- Match-----Correlation-----find_ncc_model_exposure
* This example program shows how to use HALCON's correlation-based* matching. In particular it demon ...
- 学习日 day1
今天第一天开始写博客,希望以后能坚持,每天写,一是记录自己学习的历程,更重要的是复习每天学过的东西. 今天学习的内容:time模块的相关语法 导入方式 首行输入import time即可 time.t ...
- ES6中的let命令
ES6新增了let命令,用于声明变量.其用法类似var,区别是使用let命令声明的变量只在当前代码块有效. for循环的计数器就很适合使用let命令. var arr= [1,2,3,4,5]; fo ...
- Mysql连接数太多ERROR 1040 (HY000): Too many connections
数据库连接报错:ERROR 1040 (HY000): Too many connections 1.查看连接数 /usr/local/mysql/bin/mysqladmin -h host - ...
- Ambari2.7.3 和HDP3.1.0搭建Hadoop集群
一.环境及软件准备 1.集群规划 hdp01/10.1.1.11 hdp02/10.1.1.12 hdp03/10.1.1.13 hdp04/10.1.1.14 hdp05/10.1.1.15 a ...
- 什么是XML?
XML被设计用来传输和存储数据. HTML被设计用来显示数据. 什么是XML? XML指可扩展标记语言(EXtensible Markup Language) XML是一种标记语言,很类似HTML X ...
- JSP中JavaScript校验用户名等重复
$(function () { $("#unitFrom").validate({ errorClass:"errorInfo", //默认为错误的样式类为:e ...