Nacos使用

安装并启动

Nacos在Docker下安装

服务注册与发现

项目为一个Spring Cloud项目

Spring Cloud项目起步配置

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

application.yml

spring:
  cloud:
    nacos:
      discovery:
        server-addr: 192.168.88.121:8848
        username: nacos
        password: nacosnacosroot

bootstrap.yml

spring:  
  application:  
    name: doubucket-items

项目启动后即可注册到Nacos

配置管理

项目启动读取配置

项目为一个Spring Cloud项目

Spring Cloud项目起步配置

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

bootstrap.yml

spring:
  application:
    name: doubucket-items
  profiles:
    active:
      - dev  
      - commons
  cloud:
    nacos:
      config:
        server-addr: 192.168.88.121:8848
        file-extension: yaml
        username: nacos
        password: nacosnacosroot

读取Nacos中的配置文件${spring.cloud.nacos.config.prefix}-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}

没有设置spring.cloud.nacos.config.prefix则默认为spring.application.name,没有设置spring.profiles.active,则该位置留空,且删除前面的横线,如设置了多个spring.profiles.active,则加载多个配置文件

上面例子会读取doubucket-items-dev.yaml和doubucket-items-commons.yaml 的配置文件,同时也会默认加载doubucket-items.yaml和doubucket-items

Nacos的配置文件优先级比较高

动态加载配置

通过@ConfigurationProperties的方式自定义配置属性,不需要特殊配置即可动态加载配置

Spring Boot自定义配置属性