Eureka(注册中心)流程图
注册中心实现原理:
- 当服务中心启动,会服务器状态一起写入注册中心
- 注册中心接受服务器信息,会动态维护服务列表数据
- 当客户端启动,首先会链接注册中心,获取所有服务器列表数据,
- 并且将服务列表数据保存到本地
- 消费者执行业务调用时候,多个服务生产者,采用均衡负载思想挑选其中一个服务器进行访问(RPC)
- 当服务器发生死机,由于注册中心有心跳机制,会动态尾货服务列表数据,全网广播通知客户端更新服务列表数据,
- 在更新服务列表数据,数据同步会陷入阻塞状态
Dubbo(分布式服务)
zookeeper安装
上传zookeeper安装文件.之后解压.
解压目录:
tar -xvf zookeeper-3.4.8.tar.gz
修改配置文件
在zk根目录下创建文件夹data/log
mkdir data log
跳入conf目录中修改配置文件
复制配置文件并且修改名称
cp zoo_sample.cfg zoo.cfg
启动zk
跳转到bin目录中 zk启动关闭命令如下.
sh zkServer.sh start 或者 ./zkServer.sh start
sh zkServer.sh stop
sh zkServer.sh status
Zookeeper集群安装
在zookeeper根目录中创建新的文件夹zkCluster.
创建zk1/zk2/zk3文件夹.
在每个文件夹里创建data/log文件夹.
mkdir {zk1,zk2,zk3}/{data,log}
添加myid文件
编辑myid文件,定义编号
编辑配置文件
将zoo_sample.cfg 复制为zoo1.cfg之后修改配置文件.
修改zoo1.cfg
配置完成后将zoo1.cfg复制2份.之后需要修改对应的文件夹目录.和不同的端口即可.
ZK集群测试
通过下面的命令启动zk集群.
sh zkServer.sh start zoo1.cfg
sh zkServer.sh stop zoo1.cfg
sh zkServer.sh status zoo1.cfg