springboot整合dubbo,并在云服务器设置dubbo控制台
第一步:安装dubbo控制台
安装控制台前,首先需安装tomcat,maven,zookeeper,这里不再赘述
1.dubbo从2.6.1开始,没有专门的一个admin模块,所以我们可以找到2.5.10版本,进行下载到本地,网址:https://github.com/apache/dubbo/tree/dubbo-2.5.10
2.下载完成后,可以用FileZilla上传到云服务器,或者用命令 scp /文件路径(MAC可以直接拖动文件到控制台,会自动生成路径) root@服务器地址:/home/software(服务器存放的路径),
如: scp /Users/mac/Desktop/dubbo-dubbo-2.5.10.zip root@123.123.123.123:/home/software
输入云服务器密码后,会自动上传
3.在云服务器中,找到该文件的路径,用unzip 文件名,来 解压该文件,如果没有解压命令,需要安装一下,yum install unzip
4.解压后,进入到dubbo-admin文件夹,利用命令 mvn package -Dmaven.test.skip=true 来打包项目
5.打包好后,在target文件夹中,找到dubbo-admin-2.5.10.war,把这个war包copy到tomcat的目录webapps下的ROOT下面(可以删除tomcat webapps目录下ROOT其他原有内容),然后使 用jar xvf dubbo-admin-2.6.0.war解压war包,把解压后的内容全部放到ROOT目录下
6.启动Tomcat,在本地输入网址,默认用户名和密码都是root,输入用户名和密码,就能看到如图控制台
7.此时,最后一栏服务名称,应用数量,提供者数量,和消费者数量都为0
第二步:创建springboot结合dubbo项目
1)接口模块
1.创建一个名为dubbo的springboot工程,删除自动生成的src文件
2.在该工程下,新增一个名为user-api的Module,在该模块下创建一个名为UserService的接口,并增加一个获取用户名字的方法,如图:
2)实现模块
1.新增一个名为user-service的模块,pom中引入如下jar包,
<properties>
<dubbo-spring-boot>1.0.0</dubbo-spring-boot>
</properties>
<!-- Spring Boot Dubbo 依赖 -->
<dependency>
<groupId>io.dubbo.springboot</groupId>
<artifactId>spring-boot-starter-dubbo</artifactId>
<version>${dubbo-spring-boot}</version>
</dependency>
<!-- 导入api也是为了演示 -->
<dependency>
<groupId>com.dubbo.user-api</groupId>
<artifactId>user-api</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
2.创建一个名为UserSeviceImpl的实现类,实现了上述的接口(注意,在这里只是演示dubbo的注册与发现,在同一个工程中这样实现毫无意义),并填上注解@Service(不要导错了,是这个:import com.alibaba.dubbo.config.annotation.Service;),注明version,如下
3.在application.properties中添加如下信息
server.port=8080
####dubbo,scan注明的是该实现类的包名
spring.dubbo.application.name=provider
spring.dubbo.registry.address=zookeeper://123.123.123.123:2181
spring.dubbo.protocol.name=dubbo
spring.dubbo.protocol.port=20880
spring.dubbo.scan=com.dubbo.userservice.serviceImpl
确认已经启动云服务器的zookeeper后,启动本地的服务,打开网页,会发现,已经有提供者注册了,但是没有消费者
3)应用模块
1.新增一个名为user-web的模块,pom中引入如下jar包,
<properties>
<dubbo-spring-boot>1.0.0</dubbo-spring-boot>
</properties>
<!-- Spring Boot Dubbo 依赖 -->
<dependency>
<groupId>io.dubbo.springboot</groupId>
<artifactId>spring-boot-starter-dubbo</artifactId>
<version>${dubbo-spring-boot}</version>
</dependency>
<!-- 导入api也是为了演示 -->
<dependency>
<groupId>com.dubbo.user-api</groupId>
<artifactId>user-api</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
2.创建一个名为UserController的web层,引入UserService这个类的时候,要用@Reference(不要导错了,是这个
import com.alibaba.dubbo.config.annotation.Reference;
),并注明类的版本,跟上面实现类的版本是一致的,如图
3.在application.properties中添加如下信息
server.port=8081
## Dubbo 服务消费者配置,注意端口8081与服务不一致,不然本地无法启动;同样,scan指消费者的包名
spring.dubbo.application.name=consumer
spring.dubbo.registry.address=zookeeper://123.56.21.99:2181
spring.dubbo.scan=com.dubbo.userweb
4.启动这个应用,浏览器输入网址,能看到消费者了,大功告成!!!yeah!
PS:如遇到Log4j,Logger之类的报错,需要引入一个jar包即可,
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
原文地址:https://www.cnblogs.com/dolci/p/11009655.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Android开发之CheckBox的简单使用与监听功能示例
- Android将图片上传到php服务器的实例代码
- Android图片识别应用详解
- Android 列表形式的切换的示例代码
- Android 拍照并对照片进行裁剪和压缩实例详解
- Android 多线程实现重复启动与停止的服务
- Android 简单的图片查看器源码实现
- jmeter在linux系统下运行及本地内存调优的方法详解
- Android实现录音功能实现实例(MediaRecorder)
- Linux下9种优秀的代码比对工具推荐小结
- Android开发实现在Wifi下获取本地IP地址的方法
- Android基于Glide v4.x的图片加载进度监听
- Android如何通过scheme跳转界面
- Android EditText实现输入金额类型详解
- ubuntu20.04中文输入法安装步骤