NACOS

nacos是阿里开源的微服务注册核心+配置核心.本文次要讲nacos作为配置核心的性能.相比传统的Spring Cloud Config须要bus音讯总线+音讯队列来实现配置动静刷新,nacos本身即可刷新配置,极大简化的开发成本.

nacos的注册核心与配置核心离开应用不同的jar包,本文只应用nacos-config.

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

nacos属性

  • namespace

    • 命名空间,通常用于辨别dev/master等运行环境.默认即public
  • group

    • 第二层级,通常用来划分我的项目.默认即DEFAULT_GROUPP
  • Data Id

    dataId应用${spring.application.name}-${spring.profile.active}.${spring.cloud.nacos.config.file-extension}**.其中**-active**可省略,即**${spring.application.name}.${spring.cloud.nacos.config.file-extension}. 一些多环境通用配置项能够应用这种形式来配置.

  • file-extension

    • 反对yml和properties

yml

spring:  application:    name: nacos-config  profiles:    active: online  cloud:    nacos:      config:        server-addr: localhost:1111        file-extension: ymlserver:  port: 8084

应用@RefreshScope注解来实现配置动静刷新

@RefreshScopepublic class NacosController {    @Value("${trevis.hobby}")    private String hobby;

配置共享

  1. 应用${spring.application.name}.${spring.cloud.nacos.config.file-extension}形式.

2.应用shared-configs

spring:  application:    name: nacos-config  profiles:    active: dev  cloud:    nacos:      config:        server-addr: localhost:1111        file-extension: yml        shared-configs: nacos-config-shared.yml