Nacos学习
Nacos注册中心搭建
Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理
下载地址
网站下载太慢了,提供一个百度网盘的下载地址,版本是1.2.1
https://pan.baidu.com/s/1xYSQA0Ac8C8cgeW-VJBGiw 提取码:j6eq
解压完之后在nacos\conf\application.properties可以修改端口
nacos\bin\startup.cmd可以直接启动
http://IP:端口/nacos/index.html 访问 账号密码都是nacos
Nacos客户端注册
- Maven引入
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
- yml配置
server:
port: 1111
spring:
application:
name: nacos-config
cloud:
nacos:
discovery:
server-addr: 192.168.0.103:1109
启动入口配置和之前一样,启动项目之后可以在nocas页面看到服务已经注册上去了
Nacos配置中心
Nacos配置中心入门
- Maven
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
- 增加bootstrap.properties
spring.application.name=nacos-config
spring.cloud.nacos.config.server-addr=127.0.0.1:1109
- application.yml增加
name: lisi
- controller
@RestController
public class DemoController {
@Value("${name}")
private String name;
@GetMapping("getName")
public String getName() {
return "获取的名称: " + name;
}
}
- 动态获取配置
启动的时候会自动加载配置文件
在刚刚的DemoController 上面增加自动刷新注解
@RestController
@RefreshScope
public class DemoController {
这样每次点击发布都可以动态刷新配置了。
Nacos配置中心名词解释
- 命名空间:默认新增的配置文件都在public里面。通过命名空间区分不同的环境(如开发环境、测试环境等)。
#bootstrap.properties增加命名空间配置
spring.cloud.nacos.config.namespace=c34253ae-0d33-4962-8bfd-0c11acdc4fde
- 配置集:一个项目所有的配置文件的集合。
- 配置集ID:相当于配置文件名称,是nacos的Data ID
- 配置分组:默认所有的配置集都属于:DEFAULT_GROUP。可以根据分组获取不同的配置文件。
#bootstrap.properties增加分组配置
spring.cloud.nacos.config.group= test
Nacos配置中心加载多配置集
有时候我们会根据数据源或者Mybatis分不同的配置文件,使用下面的配置就可以加载多个配置集
#bootstrap.properties
spring.cloud.nacos.config.extension-configs[0].data-id= 属于那个配置集ID
spring.cloud.nacos.config.extension-configs[0].group= 属于那个分组
#需不需要动态刷新 true是动态
spring.cloud.nacos.config.extension-configs[0].refresh=