一、Nacos是什么?
阿里的一个开源产品,是针对
二、Nacos的四大功能
1.服务发现和服务健康监测(使服务更容易注册,并通过DNS或HTTP接口发现其他服务,还提供服务的实时健康检查,以防止向不健康的主机或服务实例发送请求。)
2.动态配置服务
3.动态DNS
三、注册中心功能
1.相关依赖
<!-- spring cloud alibaba nacos discovery 服务注册依赖 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
2.项目配置
spring
3.启动类设置
四、配置中心功能
1.相关依赖
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
2.在Nacos上配置文件,使用代码读取
(1)Nacos作为配置中心,简单使用
默认配置:当配置文件名称为项目的application name 时,代码会自动拉取
-
配置文件
spring
4.,其他相关配置
(1)refresh-enabled属性:用来开启、关闭动态刷新(值为false后nacos客户端无法感知配置的变化)
(2)profile属性:在配置中心可以使用profile进行设置即 dataId=服务名称-项目启动环境.文件格式后缀 即 dataId=${spring.application.name}-${profile}.${file-extension:properties}
(3)file-extension属性:nacos客户端默认拉取的是properties格式的配置文件,其他文件格式需要在项目配置文件中指定,只针对默认的配置文件和profile。
(4)shared-configs属性:可以共享配置文件,编写多个配置文件,配置在此属性里面。data-id表示配置文件名称, refresh表示是否动态刷新,group表示分组名称默认为DEFAULT_GROUP
(5)
五、使用小技巧
Nacos中NameSpace、Group、DataId的最佳实践 NameSpace:代表不同环境,如开发,测试,生产环境。
Group:代表项目,如医疗项目、保险项目、电商项目。
DataId:每个项目下往往有若干个微服务,每个配置集(DataId)是一个微服务的主配置文件。
2、配置文件优先级 优先级大的会覆盖优先级小的,并且形成互补
profile>默认配置文件>extension-configs(下标越大优先级越大)>shared-configs(下标越大优先级越大)