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=