0
点赞
收藏
分享

微信扫一扫

39.0、springboot整合---Dubbo和Zookeeper的安装【教程】以及简单介绍,还有zkServer.cmd文件启动闪退的问题解决

mafa1993 2022-03-30 阅读 21

39.0、springboot整合---Dubbo和Zookeeper的安装【教程】以及简单介绍

目录

39.0、springboot整合---Dubbo和Zookeeper的安装【教程】以及简单介绍

Dubbo以及Zookeeper的简单介绍:

下面我们来配置一下zookeeper:

OK,那我们接下来再来安装dubbo:


Dubbo以及Zookeeper的简单介绍:

让我们先来看一张关于dubbo结构的图如下:【想看安装教程的直接下划至zookeeper配置那里】

        服务提供者(Provider): 暴露服务的服务提供方,服务提供者在启动时,向注册中心注册自己提供的服务。

        服务消费者(Consumer): 调用远程服务的服务消费方,服务消费者在启动时,想注册中心订阅自己所需要的服务,服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,如果调用失败,再选另一台调用。

        注册中心(Redistry):注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者。

        监控中心(Monitor):服务消费者和提供者,在内存中积累调用次数和调用时间,定时每分钟发送一个统计数据到监控中心。、

调用关系说明:
        服务容器负责启动,加载,运行服务提供者。

        服务提供者在启动时,向注册中心注册自己提供的服务。

        服务消费者在启动时,向注册中心订阅自己所需要的服务。

        注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者。

        服务消费者,从提供者地址列表中,基于软负载均衡算法:选一台提供者调用,如果调用失败,再选另一台调用。

        服务消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次统计数据到监控中心

        Dubbo是一个高性能的基于java实现的 RPC 通信框架

Dubbo环境搭建

        进入dubbo官网,可以看到他推荐我们使用Zookeeper注册中心

那先来给大家说说什么是Zookeeper?【想直接看配置的也可以直接下划至配置zookeeper】

        ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

        ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。

        ZooKeeper包含一个简单的原语集,提供Java和C的接口。

    ZooKeeper代码版本中,提供了分布式独享锁、选举、队列的接口,代码在$zookeeper_home\src\recipes。其中分布锁和队列有Java和C两个版本,选举只有Java版本。

下面我们来配置一下zookeeper:

第一步:进入https://archive.apache.org/dist/zookeeper/zookeeper-3.4.14/

下载好zookeeper压缩包,我这里下载的是3.4.14版本

第二步:下载好后解压缩文件,【注意】这里要解压两次,一次是gz一次是tar

        解压后可以看到有一个bin文件夹进去,双击zkServer.cmd文件,看看是否闪退。如果双击后直接闪退就按下面操作解决

编辑zkServer.cmd文件末尾添加pause,如下:

        这样运行出错就不会闪退,而是会提示错误信息,方便找到原因

        然后我们再次双击启动zkServer.cmd文件,可以看到报错提示如下:

        相信大家都能看懂这个java错误,大致上说的就是在conf这个文件夹下找不到zoo.cfg这个文件。

解决方案如下:

        点击进入conf文件夹,复制一份zoo_sample.cfg文件粘贴到conf文件夹下。并将复制的文件名修改为zoo.cfg即可,文件内的内容无需改动。

conf文件夹如下图:


 

Ok,再次双击启动zkServer.cmd文件,没有报错完美启动运行

接下来我们来看看zookeeper的默认端口,以及测试一下是否能连接成功

        点开zoo_sample.cfg文件可以看到zookeeper的默认端口号是2181

        双击zkServer.cmd文件启动服务器无报错后,再双击zkCli.cmd这是一个客户端可以测试连接,

以及一些操作。可以看到 Connecting to localhost:2181这段信息表示连接成功了

OK,那我们接下来再来安装dubbo:

第一步:进入https://github.com/apache/dubbo-admin/tree/master-0.2.0

        下载相应的dubbo压缩包

        解压后我们可以发现这其实就是一个springboot maven项目,我们可以在该项目目录下打开命令窗口,用以下命令打包dubbo-admin,命令如下:

         但是由于我这边没有配置环境变量,导致用命令行打包有点问题:显示mvn不是内部命令所以我直接用IDEA打开这个项目进行打包操作如下:

        打包完成后我们可以发现在dubbo-admin文件夹下多了一个target文件夹,

点进去可以看到有一个dubbo-admin-0.0.1-SNAPSHOT.jar文件

我们先去启动之前配置好的zookeeper服务器(zkServer.cmd),然后在target文件夹下打开cmd以管理员身份运行【注意这里必须要以管理员身份运行,不然会有问题】

用以下命令启动dubbo-admin-0.0.1-SNAPSHOT.jar文件

命令如下:

java -jar dubbo-admin-0.0.1-SNAPSHOT.jar

或者双击dubbo-admin-0.0.1-SNAPSHOT.jar文件,启动应该也没啥问题~

        启动后访问他设置的默认端口7001(这些配置在application.properties配置文件里都能找到)

即可进入他设置的默认后台管理页面,进入首页需要登录,设置的默认用户名和密码都为root

登录后如下:

总结一下:

        Zookeeper:是一个注册中心

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

        Dubbo:jar包

举报

相关推荐

0 条评论