Spring Cloud Alibaba 的服务注册与发现

  • 时间:
  • 来源:互联网
  • 文章标签:

Spring Cloud Alibaba 服务发现例子

    • 一、需求
      • 1、提供者完成的功能
      • 2、消费者完成的功能
      • 3、可以附加的额外配置
    • 二、实现步骤
      • 1、总的依赖引入
      • 2、服务提供者和发现者,引入服务发现依赖
      • 3、代码实现
    • 三、代码实现
    • 四、参考文档

一、需求

完成一个简单的例子,使用 Spring Cloud Alibaba 完成服务的注册与发现

1、提供者完成的功能

1、服务提供者注册到nacos

spring.cloud.nacos.discovery.register-enabled = true

2、配置元数据信息

spring.cloud.nacos.discovery.metadata  (key value) 格式

2、消费者完成的功能

1、只作为消费者,不注册到 nacos

spring.cloud.nacos.discovery.register-enabled = false

2、自定义注册到 nacos 上的服务名

自定义注册到 nacos 上的服务名,默认是获取的spring.application.name的值

3、配置nacos的服务地址

spring.cloud.nacos.discovery.server-addr=地址,不需要[http|https]

4、nacos集成ribbon

ribbon.nacos.enabled=true      true=集成,false=不集成

3、可以附加的额外配置

1、配置命名空间,用于区分不同的环境,比如 dev、local等,需要写 命名空间ID 的值

spring.cloud.nacos.discovery.namespace

2、配置组,不同的服务可以划分到一个组,默认是 DEFAULT_GROUP

spring.cloud.nacos.discovery.group

3、配置集群,默认值是 DEFAULT

spring.cloud.nacos.discovery.cluster-name

二、实现步骤

1、总的依赖引入

<dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>2.3.2.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>Hoxton.SR8</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>2.2.3.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

2、服务提供者和发现者,引入服务发现依赖

<dependency>
     <groupId>com.alibaba.cloud</groupId>
     <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
 </dependency>

3、代码实现

代码就是 普通的 spring boot 代码,测试微服务之间的调用,可以通过 ribbonfeign 等。此处略,参考下方的代码实现。

三、代码实现

https://gitee.com/huan1993/spring-cloud-alibaba-parent/tree/master/nacos-discovery

四、参考文档

1、Spring Cloud Alibaba 和 Spring Cloud 以及 Spring Boot 之间版本的选择
https://github.com/alibaba/spring-cloud-alibaba/wiki/版本说明

2、Spring Cloud Alibaba 服务发现例子
官方例子

本文链接http://www.taodudu.cc/news/show-1781777.html