标签:client export 代码实现 jdk 相关 集群 变量 定时 keep
一,前言
与redis的联系
redis 单实例,数据在内存-读取快
鉴于雪崩击穿等问题 ->复制到集群 HA sentinel 哨兵实现高可用
不是绝对的实时同步,可能连最终一致性都算不上
集群模式 分片
完成分布式 协调分布式锁
二,zookeeper(不要把zk当做数据库用)
主从集群 主是单点的(zk运行状态,1.可用状态,有主模型2.不可用状态,无主模型3.不可用状态恢复到可用状态,应该越快越好 200毫秒)
1.leader可能会挂
2.导致服务不可用
3.事实,zk集群及高可用
4.如果有一种方式可以快速的复制出一个leader
一个leader多个follower,客户端想连谁就连谁(每个客户端连接会有一个session,即临时节点)
zookeeper是一个目录结构-->不同目录即为一个节点,可以存数据,官方声明为1M->统一配置管理1.2.3.4.
持久节点
临时节点-->session
序列节点(序列化,要么是持久节点要么是临时节点)
1.统一配置管理<-1M数据 |
分布式锁,临时节点 |
client代码实现 |
|
2.分组管理<--path结构 |
|
锁依托一个父节点,具备 -s |
队列式事务锁 |
3.统一命名<--sequential |
|
代表父节点下可以有多把锁 |
|
4.同步<--临时节点 |
HA 选主 |
|
|
担保
三 安装启动
export JAVA_HOME=/app/jdk1.8.0_231/
export CLASSPATH=.:$JAVA_HOME/lib.dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
Java-version验证是否安装成功
export JAVA_HOME=/app/jdk1.8.0_231/
export CLASSPATH=.:$JAVA_HOME/lib.dt.jar:$JAVA_HOME/lib/tools.jar
export ZOOKEEPER_HOME=/app/zookeeper/apache-zookeeper-3.5.5-bin/
export PATH=$PATH:$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin
输入zk按tab键验证是否成功
配置zk相关配置:
conf/zoo.cfg
#配置数据文件夹和日志文件夹
dataDir=/var/houkai/zk
dataLogDir=/var/houkai/zk/log
#配置集群 2888: leader接收writer请求用 3888:选主投票用
server.1=192.168.65.10:2888:3888
server.2=192.168.65.20:2888:3888
server.3=192.168.65.30:2888:3888
server.4=192.168.65.40:2888:3888
server.5=192.168.65.50:2888:3888
mkdir -p /var/houkai/zk
进入/var/houkai/zk文件夹
vi myid 文件中写自己的id号,即上面的.1.2.3.4.5
service iptables status 查看防火墙状态
service iptables off
service iptables stop 即时生效,重启后复原
chkconfig iptables off 永久关闭防火墙
netstat -napt |egrep ‘(2888|3888)‘
标签:client export 代码实现 jdk 相关 集群 变量 定时 keep
原文地址:https://www.cnblogs.com/hikoukay/p/12112905.html