Author: Gorit
Date:2020年12月
Refer:阿里云大学
2021年发表博文: 8/30
Nacos 是 阿里巴巴的开源框架,提供如下两种功能:
分布式配置中心:
传统项目出现的问题:
分布式配置中心的概念?
有哪些分布式配置中心?
如何判断配置文件是否法还是能变化
分布式配置中心实现原理:
完全百分之百动态修改我们的配置文件
在这里插入图片描述
注意:Nacos 分布式配置中心 和 注册中心都部署在同一个应用,就是一个单体应用
Nacos 使用配置中心发布规则
注意事项:nacos 本地如果也配置的话,可能启动时会抛出异常
bootstrap 与 application 区别
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- nacos 整合注册中心 服务发现 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>2.2.3.RELEASE</version>
</dependency>
<!-- nacos 整合分布式配置中心 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
<version>2.2.3.RELEASE</version>
</dependency>
</dependencies>
application.yml
spring:
application:
name: gorit-member
cloud:
nacos:
# 注册中心
discovery:
server-addr: 127.0.0.1:8848
# 配置中心
config:
server-addr: 127.0.0.1:8848
group: DEFAULT_GROUP
file-extension: properties # 默认是 properties,还可以是 yaml
server:
port: 8082
bootstrap.yml (这里一般都是自定义配置文件)
gorit:
name: Gorit 牛逼
编写 SpringBoot 启动类,并添加 RestController 注解,编写一个 config 接口
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RestController;
@RestController
@SpringBootApplication
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class);
}
@Value("${gorit.name}")
private String goritConfig;
@GetMapping("/config")
public String getConfig() {
return goritConfig;
}
}
DataId为我们的服务名.properties,因为我们在 application.yml 中 file-extension 指定使用 properties 文件,当然也可以改成 yaml。所以可以这么写
写好之后,发布配置。我们可以看到控制台刷新了一下
然后再回到上面的前端页面,发现改变了
实现配置文件自动刷新,用到了 @RefreshScope 注解
gorit-member-dev.properties
gorit-member-pro.properties
创建两个对应的 配置,然后在 application.yml 中添加对应的版本信息
profiles:
active: dev
运行即可看到效果
nacos 中默认嵌入小型数据库 单机版本 实现对我们 nacos 集群
Nginx 实现 nacos 集群部署
Nacos 实现集群部署原理
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/caidewei121/article/details/113661031
内容来源于网络,如有侵权,请联系作者删除!