微服务中如使用Nacos作为配置中心统一管理配置

github官网地址:
1、Nacos作为配置中心
2、Nacos作为服务注册/发现

作为配置中心步骤

1)、引入依赖,

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

2)、创建一个bootstrap.properties

 spring.application.name=nacos-config-example
 spring.cloud.nacos.config.server-addr=127.0.0.1:8848

3)、需要给配置中心默认添加一个叫 数据集(Data Id) mall-coupon.properties.默认规则 :应用名.properties
在这里插入图片描述
4、给应用名.properties 添加任何配置
5、动态获取配置

@RefreshScope
@RestController
@RequestMapping("coupon/coupon")
public class CouponController {
    @Autowired
    private CouponService couponService;


    @Value("${coupon.user.name}")
    private String name;
    @Value("${coupon.user.age}")
    private Integer age;

如果配置中心和当前应用配置文件都配置了相同的项,优先使用中心的配置。

2.细节

一、命名空间

默认Nacos的命名空间是public,可以自行创建dev, test, prop 等等环境。
![在这里插入图片描述](https://img-blog.csdnimg.cn/c9d23b9f1b754b968e07ce4403495af8.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAd2VpeGluXzQ1MjQwNzA1,size_20,color_FFFFFF,t_70,g_se,x_16)

那项目中如何决定使用那个命名空间呢?
如果不明写使用那个命名空间,那就会使用pulibc的。
如果使用明写就要写在bootstrap.properties里面
要先在里面找到你想使用的环境的ID
在这里插入图片描述
再复制到项目里面去
在这里插入图片描述
场景1: 开发,测试,生产:利用命名空间来隔离环境
1、注意,在bootstrap.properties配置上,需要要使用那个命名空间的配置
场景2: 每一个微服务之间互相隔离配置:

二、配置集: 一级相关或者不相关的配置集合起来就叫配置集

三、配置集ID

类似文件名
Data ID: 类似文件名
在这里插入图片描述
在这里插入图片描述

四、配置分组

默认所有的配置集都属于 : DEFAULT_GROUP
写一个文件名,并且写一个组名,标明这是双11/过年的配置集。
在这里插入图片描述
上面创建好并且给了一个新的分组后,就可以在里面看到了
然后,如果想要使用指定分组里面的,配置集,那就要在项目里面指定:
在这里插入图片描述

反正就是利用命名空间、分组来确定使用那一人配置中心的配置集的内容:

spring.cloud.nacos.config.name=
spring.cloud.nacos.config.group=

版权声明:本文为weixin_45240705原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。