Dubbo及ZooKeeper安装

1. Dubbo

1.1 什么是Dubbo

  • Apache Dubbo |ˈdʌbəʊ| 是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用智能容错和负载均衡,以及服务自动注册和发现
  • Dubbo官网:https://dubbo.apache.org/zh/

1.2 Dubbo架构

在这里插入图片描述

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

调用关系说明

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

Dubbo 架构具有以下几个特点,分别是连通性、健壮性、伸缩性、以及向未来架构的升级性。

1.3 Dubbo环境支持

Dubbo推荐我们使用ZooKeeper 注册中心,写下来,我们来认识和安装ZooKeeper。
在这里插入图片描述

2. ZooKeeper

2.1 什么是ZooKeeper

  • ZooKeeper 是一个集中式服务,用于维护配置信息、命名、提供分布式同步和提供组服务。
  • Zookeeper 是 Apache Hadoop 的子项目,是一个树型的目录服务,支持变更推送,适合作为 Dubbo 服务的注册中心,工业强度较高,可用于生产环境,并推荐使用
  • Zookeeper官网:https://zookeeper.apache.org/

2.2 ZooKeeper的特性

  • 一致性∶数据一致性,数据按照顺序分批入库;
  • 原子性:事务要么成功要么失败,不会局部化;
  • 单—视图∶客户端连接集群中的任─zk节点,数据都是一致的;
  • 可靠性:每次对zk的操作状态都会保存在服务端;
  • 实时性:客户端可以读取到k服务端的最新数据。

2.3 下载ZooKeeper

下载地址:https://downloads.apache.org/zookeeper/在这里插入图片描述
在这里插入图片描述

2.4 启动ZooKeeper

2.4.1 可能会遇到的问题

问题1:初次运行会闪退

运行/bin/zkServer.cmd,初次运行会闪退。
解决方案:
我们可以在zkServer.cmd里面加pause,截止闪退,重启查看报错信息。
在这里插入图片描述
zkServer.cmd里面加pause
在这里插入图片描述

问题2:下载的版本未编译

重启,查看错误信息
在这里插入图片描述
原因分析:
也即是下载的是未编译的 jar 包。
注:zookeeper 好像从 3.5 版本以后,命名就发生了改变,如果是 apache-zookeeper-3.6.3.tar.gz 这般命名的,都是未编译的,而 apache-zookeeper-3.5.5-bin.tar.gz 这般命名的,才是已编译的包。

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

问题3:缺少zoo.cfg

解决方案:
将conf文件夹下面的zoo_sample.cfg复制一份改名为zoo.cfg即可。
在这里插入图片描述

问题4:服务端口被占用

在这里插入图片描述
解决方案:
在zoo.cfg中配置admin.serverPort=8081修改端口。

2.4.2 成功启动

经历几大波折,成功启动。
在这里插入图片描述
在这里插入图片描述

2.4.3 使用zkCli.cmd测试

2.4.3.1 查看节点

ls /
在这里插入图片描述

2.4.3.2 创建节点

create -e /test 123
在这里插入图片描述

2.4.3.3 查看某个节点

get /test
在这里插入图片描述

3. Dubbo Admin控制台

  • 为了让用户更好的管理监控众多的dubbo服务,官方提供了一个可视化的监控程序dubbo-admin,不过这个监控即使不装也不影响使用。
  • 是一个监控管理后台查看我们注册了哪些服务,哪些服务被消费了

3.1 下载Dubbo Admin控制台

下载地址:https://github.com/apache/dubbo-admin/tree/master
没有安装Git的直接选择下载
在这里插入图片描述

3.2 安装Dubbo Admin控制台

3.2.1 解压

在这里插入图片描述

3.2.2 指定zookeeper地址

在这里插入图片描述

3.2.3 打包dubbo-admin

在项目目录下打包dubbo-admin

mvn clean package -Dmaven.test.skip=true

第一次打包的过程有点慢,需要耐心等待!直到成功!
在这里插入图片描述
打包成功界面
在这里插入图片描述

3.3 启动Dubbo Admin控制台

执行 dubbo-admin\target 下的dubbo-admin-0.0.1-SNAPSHOT.jar
在这里插入图片描述

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

【注意:zookeeper的服务一定要打开!】不然会报错
在这里插入图片描述

3.4 测试是否启动成功

浏览器输入:http://localhost:7001/
默认用户名:root
默认密码:root
在这里插入图片描述

内容参考:https://www.bilibili.com/video/BV1PE411i7CV
仅用于学习!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值