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

Dubbo3注册中心的使用

zookeeper注册中心的使用

依赖引入

<dependency>
    <groupId>org.apache.dubbogroupId>
    <artifactId>dubbo-dependencies-zookeeper-curator5artifactId>
    <version>${dubbo.version}version>
    <type>pomtype>
    <exclusions>
        <exclusion>
            <artifactId>zookeeperartifactId>
            <groupId>org.apache.zookeepergroupId>
        exclusion>
    exclusions>
dependency>

<dependency>
    <groupId>org.apache.zookeepergroupId>
    <artifactId>zookeeperartifactId>
    <version>3.8.1version>
dependency>

版本配对如下:

Dubbo3应用开发—Dubbo3注册中心(zookeeper、nacos、consul)的使用_第1张图片

配置

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

dubbo:
  registry:
    address: zookeeper://127.0.0.1:2181

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

Dubbo3应用开发—Dubbo3注册中心(zookeeper、nacos、consul)的使用_第2张图片

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. 启动服务

    命令如下

    startup.cmd -m standalone
    

    Dubbo3应用开发—Dubbo3注册中心(zookeeper、nacos、consul)的使用_第3张图片

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

  4. 依赖引入

    <dependency>
        <groupId>org.apache.dubbogroupId>
        <artifactId>dubbo-registry-nacosartifactId>
    dependency>
    
  5. 配置

    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的安装和使用——本文介绍本地安装

下载

Dubbo3应用开发—Dubbo3注册中心(zookeeper、nacos、consul)的使用_第4张图片

Dubbo3应用开发—Dubbo3注册中心(zookeeper、nacos、consul)的使用_第5张图片

解压缩

下载完成后进行解压缩;

启动服务

在exe所在目录输入

./consul agent -dev(如果shiwindows使用:consul agent -dev)

Dubbo3应用开发—Dubbo3注册中心(zookeeper、nacos、consul)的使用_第6张图片

在如下地址进行访问:
http://localhost:8500/ui/

引入依赖

错误方式
1.第一种错误的引入方式

    org.apache.dubbo
    dubbo-registry-consul

原因: dubbo父项目中没有管理这个依赖,所以必须要加入版本。
2.第二种错误的引入方式
https://mvnrepository.com/artifact/org.apache.dubbo/dubbo-registry-consul
目前︰提供的版本2.7.23

    org.apache.dubbo
    dubbo-registry-consul
    2.7.23

运行报错: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

Dubbo3应用开发—Dubbo3注册中心(zookeeper、nacos、consul)的使用_第7张图片

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

Dubbo3应用开发—Dubbo3注册中心(zookeeper、nacos、consul)的使用_第8张图片

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

Dubbo3应用开发—Dubbo3注册中心(zookeeper、nacos、consul)的使用_第9张图片

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

配置

dubbo:
  registry:
    address: consul://127.0.0.1:8500

你可能感兴趣的:(Dubbo3应用开发,zookeeper,consul,分布式)