SpringBoot-12 Dubbo+Zookeeper

2021-04-15 16:00:34 浏览数 (1)

SpringBoot-12 Dubbo Zookeeper

1.Dubbo概念

Apache Dubbo (incubating) |ˈdʌbəʊ| 是一款高性能、轻量级的开源Java RPC框架,它提供了六大核心能力:面向接口代理的高性能RPC调用,智能容错和负载均衡,服务自动注册和发现,高度可扩展能力,运行期流量调度,可视化的服务治理与运维。

官网:http://dubbo.apache.org/

  • 服务提供者(Provider):暴露服务的服务提供方,服务提供者在启动时,向注册中心注册自己提供的服务。
  • 服务消费者(Consumer):调用远程服务的服务消费方,服务消费者在启动时,向注册中心订阅自己所需的服务,服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,如果调用失败,再选另一台调用。
  • 注册中心(Registry):注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者
  • 监控中心(Monitor):服务消费者和提供者,在内存中累计调用X数和调用时间,定时每分钟发送一次统计数据到监控中心
调用关系说明
  • 服务容器负责启动,加载,运行服务提供者。
  • 服务提供者在启动时,向注册中心注册自己提供的服务1服务消费者在启动时,向注册中心订阅自己所需的服务
  • 注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者。
  • 服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,如果调用失败,再选另一台调用。
  • 服务消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次统计数据到监控中心。

2.Dubbo环境搭建

这里我们可以使用Zookeeper注册中心

2.1 安装Zookeeper

下载地址:http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.6.2/

zookeeper 从 3.5 版本以后,命名就发生了改变 如果是 apache-zookeeper-3...tar.gz 这般命名的,都是未编译的 而 apache-zookeeper-3..-bin.tar.gz 这般命名的,才是已编译的包

进入之后下载压缩包即可:

下载好解压:

bin文件夹中有 zkServer.cmd,双击启动:

2.2 遇到问题

找不到或无法加载主类 org.apache.zookeeper.server.quorum.QuorumPeerMain

原因分析:

zookeeper 从 3.5 版本以后,命名就发生了改变

如果是 apache-zookeeper-*.tar.gz 这般命名的,都是未编译的

而 apache-zookeeper-*-bin.tar.gz 这般命名的,才是已编译的包

解决方案: 重新下载 apache-zookeeper-3..-bin.tar.gz 包,然后解压使用。

闪退问题

第一次使用的话,可能会遇到闪退的问题:

解决方法:

编辑该文件,在 endlocal 上面一行加入 pause

该语句会使程序运行到这个地方停止,等待你的操作

双击打开:

原因分析:

解压的文件夹根目录下,有一个conf文件夹,中间没有zoo.cfg

解决方案: 将文件中原有的zoo_sample.cfg复制一下,改名为zoo.cfg

这时候就运行成功了

2.3 Zookeeper运行

依次 先打开 bin文件夹下的:zkServer.cmdzkCli.cmd

这说明已经运行成功。

Zookeeper语句

1.查看现存有的文件夹

代码语言:javascript复制
ls /

2.创建新文件夹

下方语句意思为:创建一个zc文件夹,存值123

代码语言:javascript复制
creste -e /zc 123

3.查看文件夹内容

代码语言:javascript复制
get /zc

3.安装dubbo-admin

3.1 下载项目

dubbo-admin下载地址

注意:记得更改该项目分支为master再下载

下载好解压,在根目录下 dubbo-admin----src----main----resources文件夹下的 application.properties

代码语言:javascript复制
admin.registry.address=zookeeper://127.0.0.1:2181

此处就是注册中心地址

3.2 打包项目

在cmd命令指示框进入到根目录:

代码语言:javascript复制
mvn clean package -Dmaven.test.skip=true

第一次打包项目是挺慢的。

这时候进入 dubbo-admin----target,会出现jar包

3.3 运行测试

我们需要打开的网址为:http://localhost:7001/

cmd下,执行该语句,这时候会发现报错。

代码语言:javascript复制
java -jar dubbo-admin-0. 3. 0-SNAPSHOT. jar

然后我们先启动Zookeeper服务器,在启动jar包

默认账号密码都是:root,输入就进入了。

4.小结

zookeeper:注册中心

dubbo-admin:是一个监控管理后台-查看我们注册了哪些服务,哪些服务被消费了

Dubbo:jar包

个人博客为: MoYu’s HomePage MoYu’s Gitee Blog

0 人点赞