Dubbo3应用开发—Dubbo3注册中心(zookeeper、nacos、consul)的使用

Dubbo3注册中心的使用

zookeeper注册中心的使用

依赖引入

xml 复制代码
<dependency>
    <groupId>org.apache.dubbo</groupId>
    <artifactId>dubbo-dependencies-zookeeper-curator5</artifactId>
    <version>${dubbo.version}</version>
    <type>pom</type>
    <exclusions>
        <exclusion>
            <artifactId>zookeeper</artifactId>
            <groupId>org.apache.zookeeper</groupId>
        </exclusion>
    </exclusions>
</dependency>

<dependency>
    <groupId>org.apache.zookeeper</groupId>
    <artifactId>zookeeper</artifactId>
    <version>3.8.1</version>
</dependency>

版本配对如下:

配置

注意︰注册中心的相关内容,Provider和Consumer都要配置。如果引入了DubboAdmin,DubboAdmin的配置也要与项目中的注册中心一致。

yaml 复制代码
dubbo:
  registry:
    address: zookeeper://127.0.0.1:2181

从DubboAdmin可以看出,已经有了相应的服务。

nacos注册中心的使用

基本介绍

  1. nacos是阿里在SpringCloudAlibaba中开源的一个注册中心与配置中心组件。
  2. nacos作为注册中心,广泛的应用在微服务体系中。
  3. 开源网址: https://github.com/alibaba/nacos目前最新版本:2.2.34.

nacos的安装和使用------本文介绍本地安装

  1. 从官网 https://github.com/alibaba/nacos下载对应的nacos二进制安装包;

  2. 解压缩

  3. 启动服务

    命令如下

    markdown 复制代码
    startup.cmd -m standalone

    在地址栏输入http://localhost:8848/nacos进行访问

  4. 依赖引入

    xml 复制代码
    <dependency>
        <groupId>org.apache.dubbo</groupId>
        <artifactId>dubbo-registry-nacos</artifactId>
    </dependency>
  5. 配置

    yaml 复制代码
    dubbo:
      registry:
        address: nacos://127.0.0.1:8848

consul注册中心的使用

基本介绍

  1. Consul是一种非常轻量级的服务发现框架,适用于构建大规模的微服务架构。
  2. Consul具有服务发现、健康检查、KV存储等功能。
  3. Consul使用Go语言编写,因此可以编译成单一二进制文件并运行于Linux、Windows和MacOS等平台上。
  4. 官方网址: https://www.consul.io/

consul的安装和使用------本文介绍本地安装

下载

解压缩

下载完成后进行解压缩;

启动服务

在exe所在目录输入

markdown 复制代码
./consul agent -dev(如果shiwindows使用:consul agent -dev)
markdown 复制代码
在如下地址进行访问:
http://localhost:8500/ui/

引入依赖

错误方式

markdown 复制代码
1.第一种错误的引入方式
<dependency>
    <groupld>org.apache.dubbo</groupld>
    <artifactld>dubbo-registry-consul</artifactld>
</dependency>
原因: dubbo父项目中没有管理这个依赖,所以必须要加入版本。
2.第二种错误的引入方式
https://mvnrepository.com/artifact/org.apache.dubbo/dubbo-registry-consul
目前︰提供的版本2.7.23
<dependency>
    <groupld>org.apache.dubbo</groupld>
    <artifactld>dubbo-registry-consul</artifactld>
    <version>2.7.23</version>
</ dependency>
运行报错:NoClassDefFoundError:org/apache/dubbo/event/EventListener
原因: dubbo-registry-consul:2.7.23默认调用dubbo2.7.23会有上述类型,但是目前我们使用的是dubbo3.2.0,已经把这个类移除了,所以会报类型未找到的异常。

正确方式

https://github.com/apache/dubbo/issues/9901

https://github.com/apache/dubbo-spi-extensions

https://cn.dubbo.apache.org/en/download/spi-extensions/

xml 复制代码
<dependency>
    <groupId>org.apache.dubbo.extensions</groupId>
    <artifactId>dubbo-registry-consul</artifactId>
    <version>1.0.1</version>
</dependency>
注意:虽然官⽅⽂档上写明最新版本为1.0.3,但是⽬前maven中⼼仓
库的版本还是1.0.1。
https://mvnrepository.com/artifact/org.apache.dubbo.extensions/dubbo-registry-consul
如果想更好的解决,只能下载源码,本地安装或者私服安装。

配置

yaml 复制代码
dubbo:
  registry:
    address: consul://127.0.0.1:8500
相关推荐
架构文摘JGWZ3 小时前
Java 23 的12 个新特性!!
java·开发语言·学习
拾光师4 小时前
spring获取当前request
java·后端·spring
aPurpleBerry4 小时前
neo4j安装启动教程+对应的jdk配置
java·neo4j
我是苏苏4 小时前
Web开发:ABP框架2——入门级别的增删改查Demo
java·开发语言
xujinwei_gingko4 小时前
Spring IOC容器Bean对象管理-Java Config方式
java·spring
2301_789985944 小时前
Java语言程序设计基础篇_编程练习题*18.29(某个目录下的文件数目)
java·开发语言·学习
IT学长编程4 小时前
计算机毕业设计 教师科研信息管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解
java·毕业设计·springboot·毕业论文·计算机毕业设计选题·计算机毕业设计开题报告·教师科研管理系统
m0_571957584 小时前
Java | Leetcode Java题解之第406题根据身高重建队列
java·leetcode·题解
程序猿小D4 小时前
第二百三十五节 JPA教程 - JPA Lob列示例
java·数据库·windows·oracle·jdk·jpa
Zd085 小时前
14.其他流(下篇)
java·前端·数据库