栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

SpringCloud笔记-05-Nacos配置管理

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SpringCloud笔记-05-Nacos配置管理

前言

总结整合自视频课程 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

运行则:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/825535.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号