使用zookeeper作为分布式节点的配置中心

安装

bash 复制代码
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz
tar xfzv zookeeper-3.4.9.tar.gz && mv zookeeper-3.4.9/conf/zoo_sample.cfg zookeeper-3.4.9/conf/zoo.cfg
vim zoo_sample.cfg zookeeper-3.4.9/conf/zoo.cfg
把dataDir修改合适的目录

使用

bash 复制代码
cd zookeeper-3.4.9/bin
sudo ./zkServer.sh start/stop  #启动zk服务器
sudo ./zkCli.sh  #客户端连接服务器

zk的数据组织结构是树状
ls / 列出当前目录节点; get /zookeeper获取节点数据; 
set /zookeeper 10 设置节点数据; 
create /test 创建节点; delete /test 删除节点; deleteall /test 删除节点及子节点;
我们主要关注2个数据:第一行设置的数据,以及ephmeralOwner = 0x0 永久节点,非0临时节点

分布式中的使用

一个服务器就是一个节点,我们同样以树状结构把服务和方法以及ip,port注册进zk,使其形成这样的结构:/UserServiceRpc/Login/127.0.0.1:8001

一般是要进行zk的api编程:这里以c为例:

bash 复制代码
cd zookeeper-3.4.9/src/c
./configure --prefix=/xxx
打开makefile 548行,AM_CFLAGS = -Wall -Werror  去掉-Werror
make -j4
make install

编译完得到include和lib,即可使用他们进行客户端编程。

相关推荐
thginWalker8 小时前
ZooKeeper源码分析与实战-模块五:原理篇
zookeeper
thginWalker10 小时前
ZooKeeper源码分析与实战-模块四:实战篇
zookeeper
失散1311 小时前
分布式专题——33 一台新机器进行Web页面请求的历程
分布式·tcp/ip·http·路由器·交换机
稚辉君.MCA_P8_Java15 小时前
kafka解决了什么问题?mmap 和sendfile
java·spring boot·分布式·kafka·kubernetes
沐浴露z16 小时前
分布式场景下防止【缓存击穿】的不同方案
redis·分布式·缓存·redission
zhuyasen16 小时前
让压测回归简单:体验 PerfTest 分布式模式的“开箱即用”
分布式·压力测试
jackaroo202018 小时前
后端_Redis 分布式锁实现指南
数据库·redis·分布式
00后程序员张18 小时前
RabbitMQ核心机制
java·大数据·分布式
爱吃烤鸡翅的酸菜鱼20 小时前
深度掌握 Git 分支体系:从基础操作到高级策略与实践案例
分布式·git·后端·gitee·github
yenggd1 天前
vxlan-bgp-evnp分布式网关配置案例
网络·分布式·华为