springBoot学习笔记-26-Zookeeper


Zookeeper.

什么是Zookeeper.

ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等

ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。

主要用来解决分布式集群中应用系统的一致性问题单点故障问题

ZooKeeper的基本运转流程:

1、选举Leader。

2、同步数据。

3、选举Leader过程中算法有很多,但要达到的选举标准是一致的。

4、Leader要具有最高的执行ID,类似root权限。

5、集群中大多数的机器得到响应并接受选出的Leader。

Zookeeper集群采用主从架构;

  • 由一个Leader 和 多个Follower组成,还可增加Observer
    • Leader可读可写(可接收事务性请求和非事务性请求)
    • Follower只能读,但可转发写

Zookeeper使用.

链接:https://downloads.apache.org/zookeeper/

下载.

解压.

创建 conf/zoo.cfg 配置文件(可以拷贝zoo_sample.cfg.

# 每一个节拍的毫秒数
tickTime=2000

# 初始的节拍数
# 同步阶段可以采取
initLimit=10

# 可以在两者之间传递的节拍数发送请求并获得确认
syncLimit=5

# 存储快照的目录。
# 不要使用/tmp存储,/tmp只是一个例子。
dataDir=./tmpdata

# 客户机连接的端口
clientPort=2181

# 客户端连接的最大数目。
# 如果你需要处理更多的客户,增加这个
#maxClientCnxns=60
#
# 在开启自动督促之前,请务必阅读管理员指南中的维护部分。
# 
# http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
#
# 要在dataDir中保留的快照数量
#autopurge.snapRetainCount=3
# 清除任务间隔(以小时为单位)
# 要在dataDir中保留的快照数量
#autopurge.purgeInterval=1

## 度量供应商
#
# https://prometheus.io Metrics Exporter
#metricsProvider.className=org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider
#metricsProvider.httpPort=7000
#metricsProvider.exportJvmInfo=true

客户端常见命令.

常见命令 命令描述
ls / 使用ls命令来查看Zookeeper中所包含的内容
ls2 / 查看当前节点数据并能看到更新次数等数据
create /zk “test” 在当前目录创建一个新的Znode节点“ zk ” 以及他关联的字符串 test
get /zk 获取zk所包含的信息
set /zk “ zzz “ 将节点zk 关联的字符串设置为 zzz
delete /zk 将节点Znode - zk 删除
rmr 将节点Znode递归删除
help 帮助命令

文章作者: liuminkai
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 liuminkai !
评论
 上一篇
实体类定义规则(po、vo、dto、pojo) 实体类定义规则(po、vo、dto、pojo)
实体类定义规则.PO,Entity:persistent object 持久化对象 对应数据库的实体,其一个实例化对象对应数据表中的一条记录(一行) VO:view object 表现层对象 对应页面显示的数据对象 可以不对应数据库,
2020-10-21
下一篇 
springboot学习笔记-25-Dubbo springboot学习笔记-25-Dubbo
Dubbo.什么是Dubbo.Dubbo(读音[ˈdʌbəʊ])是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring框架无缝集成。 Dubbo是一款高性能、轻量级的开源
2020-10-05
  目录