SpringCloud笔记-05-Nacos配置管理

SpringCloud笔记-05-Nacos配置管理,第1张

前言

总结整合自视频课程 https://www.bilibili.com/video/BV1LQ4y127n4

只是自己整理了一下笔记,分享了出来。
抹除了一些。
入门学习建议观看视频,这边只是整理了一些资料。


本篇文章为Nacos文章第二部分
点击下面链接阅读第一部分
SpringCloud笔记-04-Nacos注册中心

如果还是有许多小问号,可能是没看之前几篇文章,建议按照顺序阅读,如有疑问,评论区留言交流


Nacos配置中心


使用Nacos进行统一配置管理有如下几个优点:

  • 配置更改热更新

添加配置


  • Data ID: 这里的服务名称要有唯一性,推荐使用服务名称+环境命名
  • Group: 组
  • 描述: 对该配置的描述
  • 配置格式: 配置文件的格式
  • 配置内容: 存放内容

在配置内容里,一般情况下存放的都是一些可能要发生改变的值、开关类型的值(例如:是否演示模式、是否开启xxx功能)

添加完成后即可发现新增一条记录

点击详情查看

配置获取的过程
  1. 项目启动
  2. 读取Nacos配置文件
  3. 读取本地application.yml文件 并且 与Nacos配置合并
  4. 启动Spring容器
  5. 加载Bean
Nacos地址从哪里获取???

在项目启动过程中,要选择一个比application.yml文件更高优先级的 bootstrap.yml文件
然后将Nacos地址放入bootstrap.yml文件中即可


使用配置中心步骤 项目配置


将application.yml文件的重复配置删除

使用配置

使用Value注入等方式,和 application.yml 一样的用法
不过这样配置还是不能热更新,只是项目启动时候的初始配置
热更新的配置,请接着往下看


配置热更新

Nacos中的配置文件变更后,微服务无需重启就可以感知。不过需要通过下面两种配置实现:

方式一

在@Value注入的变量所在类上添加注解@RefreshScope
这个注解的作用就是属性刷新

方式二

使用@ConfigurationProperties注解
这个注解可以完成配置的自动加载


多环境配置共享

微服务启动时会从nacos读取多个配置文件:

  • [spring.application.name]-[spring.profiles.active].yaml
    例如:userservice-dev.yaml

  • [spring.application.name].yaml
    例如: userservice.yaml

无论profile如何变化,[spring.application.name].yaml这个文件一定会加载,因此多环境共享配置可以写入这个文件


多环境的优先级

Nacos的配置优先级如下:

本地中添加配置

本地环境: application.yml

此时nacos中没有进行配置
运行后

在Nacos中添加共享配置

nacos:userservice.yaml

访问服务之后,获得的是nacos中配置文件的配置

本地、共享、运行环境都有配置

现在又加了一个
nacos:userservice-dev.yaml

运行则:

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/722569.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-26
下一篇 2022-04-26

发表评论

登录后才能评论

评论列表(0条)

保存