nacos配置中心

 2.3 Nacos配置管理

nacos配置中心_第1张图片

Nacos可以将配置集中管理,也可以在配置变更时,及时通知微服务,实现配置的热更新。

nacos配置中心_第2张图片

2.3.1 配置管理

nacos配置中心_第3张图片

nacos配置中心_第4张图片

上图第一行的流程为常规配置文件读取流程,现在由于需要读取nacos配置中心内的文件,需要额外弄一个bootstarp.yml;

bootstrap.yml文件,这个文件是引导文件,优先级高于application.yml:

添加依赖


        
            com.alibaba.cloud
            spring-cloud-starter-alibaba-nacos-discovery
        

添加bootstrap.yml文件

spring:
  application:
    name: userservice
  profiles:
    active: dev #环境
  cloud:
    nacos:
      server-addr: localhost:8848 #nacos地址
      config:
        file-extension: yaml #文件后缀名

通过value注解成功读取到nacos的配置

    @Value("${pattern.dateformat}")
    private String dateformat;

    @GetMapping("now")
    public String now(){
        return LocalDateTime.now().format(DateTimeFormatter.ofPattern(dateformat));
    }

2.3.2 配置热更新

方式一:在@Value注入的变量所在类上添加注解@RefreshScope

方式二:使用@ConfigurationProperties注解

@Data
@Component
@ConfigurationProperties(prefix="pattern")
public class PatternProperties {
    private String dateformat;
}

2.3.3 多环境配置共享

优先级排序:

服务名-profile.yaml >服务名称.yaml > 本地配置

nacos配置中心_第5张图片

微服务会从nacos读取的配置文件:

[服务名]-[spring.profile.active].yaml,环境配置

[服务名].yaml,默认配置,多环境共享

优先级:

[服务名]-[环境].yaml >[服务名].yaml > 本地配置

2.3.4 Nacos集群搭建

nacos配置中心_第6张图片

你可能感兴趣的:(java,开发语言)