《Spring Cloud Alibaba实战》系列-Nacos之注册中心、配置中心

Nacos是一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台

安装Nacos控制台

本人使用的是docker安装的,教程:https://blog.csdn.net/HXNLYW/article/details/97101028

管理界面

配置管理:配置中心功能,可以新增修改配置,结合springcloud可以实现热更新配置。
服务管理:注册发现中心,所有的服务实例都在这里,可以查看服务的状态,强制下线等。
命名空间: 用于控制环境问题,有几个环境,就可以建几个。配置和服务都可以注册到相应的命名空间
集群管理: 用于管理集群的,本人还没有用过 ...... 

增加相应依赖

无需指定版本,版本依赖控制在<dependencyManagement>中,不明白的同学可以移步上一篇

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

增加相应配置项

namespace就是上文的提到的命名空间,用于区分环境,这里配置的是Id。

spring:
  profiles:
    active: '@profiles.active@'
  application:
    name: gourdhu-service
  cloud:
    # nacos-配置
    nacos:
      # 配置中心
      config:
        # 是否开启配置中心,默认true
        enabled: true
        server-addr: 111.231.111.150:8848
        file-extension: yaml
        encode: UTF-8
        # 命名空间的id
        namespace: 843fe123-56c4-402a-a7c8-75cd94af1db6
        shared-dataids: gourdhu-local.yaml
        group: GOURD
      # 注册发现中心
      discovery:
        # 是否开启注册中心,默认true
        enabled: true
        group: ${spring.cloud.nacos.config.group}
        # 默认应用名
        service: ${spring.application.name}
        server-addr: ${spring.cloud.nacos.config.server-addr}
        namespace: ${spring.cloud.nacos.config.namespace}

避坑:配置项需配置在bootstrap.yml中,否则会错。

Application failed to connect to Nacos server: ""
Action:
Please check your Nacos server config

注意:dataId默认为: ${spring.application.name}-${spring.profile.active}.${file-extension}

在nacos控制台中新建相应配置项。如果未在配置中心配置相应配置,程序将读取本地yml中的配置信息。如果配置了,就优先读取配置中心的配置信息。

至此配置中心功能就整合完成了。

加载多配置文件:https://www.cnblogs.com/didispace/p/10358157.html

注册中心-增加注解

启动类增加注册发现注解 @EnableFeignClients 和 @SpringCloudApplication

由于@SpringCloudApplication包含了@SpringBootApplication所以可以去除@SpringBootApplication注解。

至此注册中心功能整合也完成了。

启动项目

控制台输出如下内容,说明配置中心功能正常

Nacos控制台的服务管理-服务列表中查看是否存在服务实例gourdhu-service。如下说明注册中心功能正常。

热更新测试

准备测试接口,和配置项,并在接口类上加上@RefreshScope 注解。

 项目启动成功后,我们直接通过浏览器访问接口,看接口返回的配置项信息,为了结果的真实性,我做了一个GIF。

配置热更新

 至此,整合Nacos作为配置中心和注册发现中心 功能就完成啦,是不是很简单呢。

Nacos官方文档:https://nacos.io/zh-cn/docs/concepts.html

 

上一篇:《Spring Cloud Alibaba实战》系列-初识

下一篇:《Spring Cloud Alibaba实战》系列-Feign之远程调用

===============================================

代码均已上传至本人的开源项目

spring-cloud-plus:https://blog.csdn.net/HXNLYW/article/details/104635673

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章