1. Dubbo介绍
1.1 什么是dubbo
- Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架(SOA),使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和Spring框架无缝集成。
- Dubbo是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现
1.2 Dubbo的调用原理
-
1.DUBBO框架的底层实现RPC协议,不会执行HTTP协议
-
2.当服务生产者启动时,会将自己的服务名称/IP/端口号写入注册中心
-
3.注册中心接收服务器请求时,会将服务信息写入自己维护的服务列表中.
-
4.当服务消费者启动时,首先会链接注册中心.获取服务列表数据.并且保存到本地内存中.
-
5.当用户发起请求时,这时消费者根据用户的需求查询服务列表信息.基于负载均衡策略.查找正确的IP:端口之后发起RPC请求.
-
6.服务提供者接收用户的请求,之后开始完成业务处理.并且将数据返回.
注意事项:对象必须实现序列化接口. -
7.当后台服务器宕机时.注册中心基于心跳检测机制.发现服务器宕机.同时更新自己的服务列表数据.同时全网广播.之后消费者接收注册中心的信息之后.也同步更新自己的本地数据.方便下次服务调用
2 . Zookepeer介绍
2.1 什么是Zookepeer
-
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等
-
ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户
-
Zookeeper负责服务的协调调度.当客户端发起请求时,返回正确的服务器地址
2.2 Zookepeer下载
3. Zookeeper安装
3.1 Xshell连接linux虚拟机
- 进入/usr/local/src/目录下
3.2 拖拽Zookepeer的压缩包
3.3 解压zookeeper压缩包
命令:tar -xvf apache-zookeeper-3.7.0.tar.gz
3.4 解压结束删除压缩包
命令:rm -rf apache-zookeeper-3.7.0.tar.gz
3.5 重命名zookeeper
命令:mv apache-zookeeper-3.7.0/ zookeeper-3.7.0
3.6 修改配置文件
3.6.1 在zookeeper根目录下创建文件夹data/log
命令:mkdir data log
3.6.2 复制配置文件并且修改名称
进入conf目录下
命令:cp zoo_sample.cfg zoo.cfg
3.6.3 修改zoo.cfg文件
- 进入zoo.cfg文件
命令:vim zoo.cfg
- 修改data / log的路径,保存并退出
3.7 启动zookeeper
3.7.1 进入bin目录
3.7.2 启动zookeeper
- 1、启动命令
sh zkServer.sh start 或者 ./zkServer.sh start
- 2、查看启动状态
命令:./zkServer.sh status
- 查看启动zookeeper的状态
命令:ps -ef |grep zookeeper
- 关闭服务
命令:./zkServer.sh stop