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;
配置共享
- 应用${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