1. Nacos简介
Nacos 阿里开源的配置管理平台, Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。
Nacos 的介绍:
1、服务发现:Nacos提供原生SDK,OpenApi帮助注册服务,服务注册以后,可通过OpenApi查找发现服务。
2、动态配置服务:Nacos提供可视化配置文件管理平台,properties/yaml格式,可回滚历史记录,分区,分组,鉴权管理。配置文件更新发布后,依赖Nacos配置中心的服务,可实时生效修改的配置信息。
3、Nacos可集成spring-boot,spring-cloud等目前主流生态,可集群/单机部署。
2. Nacos集成SpringBoot依赖
Nacos SDK 0.2.6 / Nacos Server 2.0.3 / Spring boot版本 2.0.3。
官方文档说明,SpringBoot版本,Nacos版本,Nacos SDK版本需要相对应,否则不兼容,这里SpringBoot与Nacos依赖相差了几个小版本,主要是实践后发现SpringBoot 2.0.3版本,集成Nacos 0.2.1版本有bug,具体查看
https://blog.csdn.net/loney_wolf/article/details/120305171
<!-- nacos 配置依赖 -->
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>nacos-config-spring-boot-starter</artifactId>
<version>0.2.6</version>
</dependency>
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>nacos-config-spring-boot-actuator</artifactId>
<version>0.2.6</version>
</dependency>
<!-- 注册服务依赖-->
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>nacos-discovery-spring-boot-starter</artifactId>
<version>0.2.6</version>
</dependency>
<!-- spring boot版本 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.3.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
3. yaml配置
通过配置文件指定读取的Nacos配置文件,需要注意最后拼接得到data-id在Nacos配置平台上要找得到。如过需要用到自动刷新,一定要开启 auto-refresh: true
#Nacos配置文件读取配置
nacos:
config:
server-addr: 127.0.0.1:8848
data-id: application-${spring.profiles.active}.${nacos.config.type}
type: yaml
group: ${spring.profiles.active}
bootstrap:
enable: false
log-enable: true
namespace: gz
auto-refresh: true
context-path: /nacos
##Nacos 服务注册配置
discovery:
server-addr: 127.0.0.1:8848
context-path: /nacos
auto-register: true
register:
service-name: nacos-service-provider
ip: 127.0.0.1
port: 8081
metadata: {group: "dev",context-path: "/nacos"}
namespace: gz
除了使用配置文件配置加载,还可以使用注解加载配置
4. 验证refresh刷新
在Nacos可视化平台配置好yaml配置。启动工程
访问测试接口