Dubbo环境搭建

php论坛  2020-02-11 17:16:57  来源:1  阅读:165

最近刚刚贴上小猪佩奇的标签,进入公司后接触的一个项目,采用了springboot+dubbo+zookeeper的架构,对我来说,完全是一个全新的东西,但是为了能够对这个项目进行全面的测试,必然要对测试对象有深入的了解。所以决定通过实践来学习——自己搭建一个Dubbo服务。

1.1 Dubbo原理

Dubbo是一种分布式的服务器框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。主要用于解决负载均衡、容灾等问题。
其基本原理可以通过一张图来概括


dubbo原理.png

1.1.1 节点角色说明

Provider: 暴露服务的服务提供方。

Consumer: 调用远程服务的服务消费方。

Registry: 服务注册与发现的注册中心。

Monitor: 统计服务的调用次调和调用时间的监控中心。

Container: 服务运行容器。

1.1.2 调用关系说明

0.服务容器负责启动,加载,运行服务提供者。

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

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

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

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

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

1.2 环境配置

jdk1.8 + tomcat9 + zookeeper3.4.10 + dubbo2.5.10

1.3 zookeeper的安装

zookeeper是一种分布式协调服务,我们的项目中选用了它,用于维护和监控存储的数据的状态变化。通过监控这些数据状态的变化,从而可以达到基于数据的集群管理。

下载zookeeper安装包 zookeeper-3.4.10下载,然后进入到conf目录下,新建一个zoo.cfg

#tickTime: zookeeper中使用的基本时间单位,毫秒值。#dataDir: 数据目录,即自己下载的zookeeper的data目录#dataLogDir: log目录, 同样可以是任意目录. 如果没有设置该参数, 将使用和#dataDir相同的设置#clientPort: 监听client连接的端口号。tickTime=2000dataDir= /usr/local/zookeeper-3.4.10/data 

dataLogDir=/usr/local/zookeeper-3.4.10/logs

clientPort=2181

添加以上配置并保存后,进入zookeeper-3.4.10/bin目录下 执行./zkServer.sh start ,如图所示,zookeeper启动成功

zookeeper启动

1.4 dobbo admin安装

1.4.1 打包

安装dubbo admin需要下载dubbo-admin的war包。为了避免版本的冲突问题,这里我选择了自己打包。步骤很简单,去官网下载dubbo源码,然后进入到本地的dubbo-admin目录

cd /Users/Jocelyn/Downloads/incubator-dubbo-dubbo-2.5.10/dubbo-admin

在该目录下执行编译打包

mvn package -Dmaven.test.skip=true -e

这里加上-e控制Maven的日志级别,打印错误信息,便于定位执行中可能遇到的问题,我这次打包的过程一直失败,查看错误信息发现抛java.lang.ArrayIndexOutOfBoundsException: 31523 的错误,尝试了很多办法,最后重装了一个3.5.3版本的maven,问题解决。

打包完成后,dubbo-admin下会生成一个target文件夹,如图所示,可以在该文件夹下找到生成的war包。

dubbo目录结构

然后将这个war包拷贝出来,放到 本地的ApacheTomcat/webapps目录下。

1.4.2 修改dubbo的配置

进入/ApacheTomcat/webapps/dubbo-admin-2.5.10/WEB-INF修改dubbo.properties文件

dubbo.registry.address=zookeeper://127.0.0.1:2181dubbo.admin.root.password=root

dubbo.admin.guest.password=guest

配置dubbo的注册中心地址以及用户名密码。

1.4.3 启动

以上工作完成之后,进入到/ApacheTomcat/bin目录下启动Tomcat,输入命令:

 ./startup.sh

然后打开本地浏览器,输入http://localhost:8080/dubbo-admin-2.5.10/,在弹框中输入用户名密码。

DuangDuangDuang 就可以看到下图页面,dobbo环境就搭建完成了~

dubbo-admin启动成功页面

接下来就可以把dubbo和zookeeper集成到spring-boot中,之后将在另一篇文章中进行总结。

16人点赞

工作实践



作者:龙龙龙Biubiubiuing
链接:https://www.jianshu.com/p/69243fa4ddb0
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


分享到:

0条评论网友评论

  • 全部评论
加载更多

飞翔船舶

关于飞翔 | 联系我们 | 新手教程 | 隐私声明 | 经营优势 | 常见问题

Copyright © 2010 - 2012 Tencent. All Rights Reserved  工信部备案号:备案号:ICP备1100256