Nacos 的配置管理和配置热更新

一、配置管理的必要性

1. 存在问题

  • 微服务重复配置过多维护成本高:将各个微服务的配置都写到配置管理服务中,单个微服务不去编写配置,而是到配置管理服务中读取配置,实现配置共享,便于修改和维护

  • 业务配置经常变动,修改之后要重启微服务:修改了配置文件之后,微服务需要重启(一段时间不可用)

  • 如果修改了网关的路由配置,网关也需要重启,那所有服务都不可用了

2. 配置管理

  • 监听配置变更,推送变更消息到对应的微服务

  • 无需重启,即可生效,实现热更新

二、配置共享

  • 在 Nacos 中(进入 Nacos 文档的配置列表)添加共享配置:包括 JDBC、MybatisPlus、日志、Swagger、OpenFeign 等配置

  • 微服务拉取 Nacos 的共享配置

  • 引入依赖

  • 编写 bootstrap.yaml 文件

    • 配置服务名称

    • 配置 Nacos 地址

    • 配置共享配置(dataId)

三、配置热更新

1. 概念:配置热更新:配置变动时,微服务无需重启即可使配置生效

  • 8
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Nacos配置热更新可以通过两种方式实现。第一种方式是使用@ConfigurationProperties注解,通过属性prefix来绑定配置文件中的配置,并使用@Component注解将配置交给Spring管理,从而实现配置文件的自动刷新。第二种方式是在使用@Value注入的变量所在类上添加@RefreshScope注解,这样当配置发生变化时,Spring会自动刷新该类的实例。在使用@ConfigurationProperties注解时,还可以通过在类上添加@Component和@Data注解,以及设置prefix属性来绑定配置文件中的配置。这两种方式都可以实现Nacos配置热更新。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [实现 nacos 中的配置热更新的两种方式](https://blog.csdn.net/weixin_43442127/article/details/123855817)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Nacos配置管理-配置热更新](https://blog.csdn.net/LMGD_/article/details/128303186)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值