【SpringCloud Alibaba系列】Dubbo dubbo-admin安装教程篇


Dubbo-dubbo-admin安装教程篇

image.png


一、dubbo-admin安装

1、环境准备

dubbo-admin是一个前后端分离的项目。前端使用vue,后端使用springboot,安装dubbo-admin其实就是部署该项目。我们将dubbo-admin安装到开发环境上。要保证开发环境有 jdk、maven、nodejs。

  • 开发环境:Windows10,安装dubbo-admin,部署该项目前后端。
  • 服务器环境:Linux CentOS 7,部署Zookeeper作为Dubbo的注册中心。

安装node.js (如果当前机器已经安装请忽略)
因为前端工程是用vue开发的,所以需要安装node.js,node.js中自带了npm,后面我们会通过npm启动,下载地址:https://nodejs.org/en/

image.png
node.js版本选择:v16版本及以下,并且是LTS长期稳定版
下载node.js的msi安装包后,修改安装路径,一路next下一步即可。

2、下载Dubbo-Admin

进入github,搜索dubbo-admin:https://github.com/apache/dubbo-admin
下载:
image.png

3、把下载的zip包解压到指定文件夹(解压到哪个文件夹随意)

image.png

4、修改配置文件

解压后我们进入…\dubbo-admin-develop\dubbo-admin-server\src\main\resources目录,找到 application.properties 配置文件,进行配置修改。
找到下面配置的注册中心的地址,修改为自己服务器的IP和端口
image.png
修改后,保存退出。
image.png

5、打包项目

在 dubbo-admin-develop 根目录下,按住shift+右键,打开power shell,执行清除并打包命令。注意:如果是普通cmd也需要用管理员方式打开,然后执行下面的maven命令。

# mvn clean package
mvn clean package -Dmaven.test.skip=true

5个打包都success后就成功了。
image.png

6、启动后端

在启动后端之前需要确保Linux中服务器注册中心Zookeeper是否启动,先将其启动。

cd /opt/zookeeper/apache-zookeeper-3.5.6-bin/bin
./zkServer.sh start

切换到目录…\dubbo-Admin-develop\dubbo-admin-distribution\target。
执行下面的命令启动dubbo-admin,dubbo-admin后台由SpringBoot构建。

# 看具体是哪个版本dubbo-admin-x.x.x.jar
cd dubbo-admin-distribution\target
# java -jar dubbo-admin-${project.version}.jar
java -jar .\dubbo-admin-0.5.0-SNAPSHOT.jar
# 或者
mvn --projects dubbo-admin-server spring-boot:run

bug描述:在启动dubbo-admin后端时,java.lang.IllegalArgumentException: Unable to canonicalize address 192.168.8.100/:2181 because it’s not resolvable
bug解决:原因:使用jdk14导致的不兼容,换成jdk1.8后解决。

7、启动前台

dubbo-admin-ui 目录下执行命令

npm run dev

image.png

bug描述:vue项目报错:error:0308010C:digital envelope routines::unsupported
bug解决:原因:node.js版本问题导致报错;(node v17+中的OpenSSL3.0对允许算法和密钥大小增加了严格的限制)。首先把不合适的node版本卸载掉:控制面板>卸载程序,重新安装node v16,安装完成,配置环境变量。搜索栏cmd,打开命令提示符,输入node -v检测版本号。

image.png
image.png

8、访问

浏览器输入。用户名密码都是root

# 之前的dubbo-admin老版本用的是Tomcat启动的,后端端口是8080(可能会冲突),前端端口是8081
#http://localhost:8081
# 新版的dubbo-admin用的是Netty,默认配置端口是38080,前端端口38082
http://localhost:38082/
# 或http://localhost:38080

image.png
image.png


二、dubbo-admin使用

1、点击服务查询

在上面的步骤中,我们已经进入了Dubbo-Admin的主界面,在【快速入门】章节中,我们定义了服务生产者和服务消费者,启动这两个服务,下面我们从Dubbo-Admin管理界面找到这个两个服务。
image.png

2、查询结果

A:输入的查询条件com.itheima.service.UserService
B:搜索类型,主要分为【按服务名】【按IP地址】【按应用】三种类型查询
C:搜索结果
(1)dubo-admin查看详情
我们查看com.itheima.service.UserService (服务提供者)的具体详细信息,包含【元数据信息】
image.png
1)点击详情
image.png
从【详情】界面查看,主要分为3个区域
A区域:主要包含服务端 基础信息比如服务名称、应用名称等。
B区域:主要包含了生产者、消费者一些基本信息。
C区域:是元数据信息,需要做配置才能显示(dubbo v2.7+)。
dubbo会为服务提供者分配一个默认的端口号20880,可以到dubbo-service的配置文件中去修改(如果配置配置多个服务,可以对每个服务指定端口号)。

<dubbo:protocol port="20880"/>

2)访问服务消费者
访问服务消费者:http://localhost:8000/user/sayHello.do
image.png
可以看到dubbo管理中该服务的消费者列表中有dubbo-web。
image.png

3)配置元数据
元数据信息如果是空的,我们需要打开我们的生产者配置文件加入下面配置。

<!-- 元数据配置 -->
<dubbo:metadata-report address="zookeeper://192.168.8.100:2181"/>

image.png

4)服务测试
image.png

image.png

image.png

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
Spring Cloud AlibabaDubbo3是两个不同的框架,目前还没有官方提供的整合方案。不过,我们可以使用Dubbo的注解方式来整合它们。 首先,我们需要依赖相关的库,在pom.xml文件中添加以下依赖: ``` <dependencies> <dependency> <groupId>org.apache.dubbo</groupId> <artifactId>dubbo-springboot-starter</artifactId> <version>3.0.0</version> </dependency> <dependency> <groupId>org.apache.dubbo</groupId> <artifactId>dubbo-registry-nacos</artifactId> <version>3.0.0</version> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-alibaba-dubbo</artifactId> <version>2.2.3.RELEASE</version> </dependency> </dependencies> ``` 然后,在Spring Boot的启动类上添加以下注解,启用Dubbo的注解扫描和自动配置: ``` @SpringBootApplication @EnableDubbo(scanBasePackages = "com.example.service") //指定需要扫描的包路径 public class Dubbo3DemoApplication { public static void main(String[] args) { SpringApplication.run(Bootstrap.class, args); } } ``` 接下来,我们需要在服务实现类上添加Dubbo相关的注解,例如: ``` @Service(version = "1.0.0") public class UserServiceImpl implements UserService { // 实现方法... } ``` 最后,在application.properties或application.yml中配置Dubbo的相关属性,例如: ``` spring.application.name=dubbo3-demo spring.cloud.alibaba.dubbo.registry.address=nacos://localhost:8848 spring.cloud.alibaba.dubbo.registry.group=DEFAULT_GROUP spring.cloud.alibaba.dubbo.registry.namespace=your-namespace ``` 完成以上步骤后,我们可以使用Dubbo的注解,如@Reference注解来引用其他服务。 需要注意的是,对于Spring Cloud AlibabaDubbo3的整合,目前还处于较早的阶段,可能存在一些不稳定性和兼容性问题。建议在实际开发中进行充分的评估和测试。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值