原因:dubbo建议使用zookeeper作为服务注册中心。
zookeeper:是用来做负载均衡和注册中心,那一个服务由哪一个机器来提供必需要让调用者知道,简单来说就是ip地址和服务名称的对应关系。zookeeper可以通过心跳包检测挂掉的机器并将挂掉的机器从注册列表删除。负载均衡:横向扩展,在不更改代码的情况下通过添加机器提高运算能力。
dubbo:管理中间层的框架,服务端调用端和服务注册端的服务中间层。
dubbo是什么?:1、是一种分布式开发的一个框架。2、高性能和透明化的RPC(Remote Procedure Call)远程过程服务调用框架。3、SOA(Service-Oriented Architecture)(面向服务架构)服务治理方案。
zookeeper安装步骤:
1、下载安装包 : wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz
2、解压安装包: tar -zxcf zookeeper-3.4.10.tar.gz
3、修改配置文件 /usr/local/test/zookeeper/zookeeper-3.4.10/conf 路径下的zoo_sample.cfg(可以重命名为zoo.cfg): cp zoo_sample.cfg zoo.cfg
4、配置环境变量:进入到根目录 进入profile文件:cd /etc/profile配置
export ZOOKEEPER_HOME=/usr/local/services/zookeeper/zookeeper-3.4.10/
export PATH=$ZOOKEEPER_HOME/bin:$PATH
export PATH
5、使配置文件生效:source /etc/profile
6、zookeeper常用命令:zkServer.sh start //开启服务 zkServer.sh stop//关闭服务 zkServer.sh restart//重启 zkServer.sh status//查看zookeeper状态
dubbo中角色描述:
1、Provider:暴露服务的服务提供者 2、Consumer:调用远程服务的服务消费方 3、Registry:服务的注册与发现的注册中心 4、Monitor:统计服务的调用次数和调用时间的监控中心
5、Container:服务运行容器
项目搭建:
1、引入相关包:
2、服务提供方
(1)接口层
(2)接口实现
(3)向zookeeper进行注册
(4)消费者调用方
(5)调用测试