Nacos做配置中心,配置要写在bootstrap.properties

这篇具有很好参考价值的文章主要介绍了Nacos做配置中心,配置要写在bootstrap.properties。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在使用Nacos做配置中心的时候发现,nacos相关的配置如果不写在bootstrap.properties里面是没有效果的。

如是我在NacosConfigProperties的fileExtension属性上打了给断点,我发现当配置写在bootstrap.properties时set方法的断点会先进去,然后再进get方法的,但是当配置写在application.yml文件上时就是相反的。

bootstrap nacos配置,Nacos,spring,微服务,Powered by 金山文档

然后我就去看SpringBoot启动的方法

bootstrap nacos配置,Nacos,spring,微服务,Powered by 金山文档

第一个断点准备环境的方法里面会调用listeners.environmentPrepared((ConfigurableEnvironment)environment);触发一个ApplicationEnvironmentPreparedEvent 事件

而BootstrapApplicationListener监听了这个事件,就会调用到onApplicationEvent方法,这里会创建一个父容器去加载bootstrap相关的类

bootstrap nacos配置,Nacos,spring,微服务,Powered by 金山文档
bootstrap nacos配置,Nacos,spring,微服务,Powered by 金山文档

BootstrapImportSelectorConfiguration 会通过spi导入NacosConfigBootstrapConfiguration从而初始化NacosConfigProperties,但是这时候只会加载bootstrap.properties里面的配置(?),所以nacos的配置写在bootstrap.properties才有作用

bootstrap nacos配置,Nacos,spring,微服务,Powered by 金山文档
bootstrap nacos配置,Nacos,spring,微服务,Powered by 金山文档

this.addAncestorInitializer(application, context); 在后面子容器实例化的时候会设置容器

bootstrap nacos配置,Nacos,spring,微服务,Powered by 金山文档
bootstrap nacos配置,Nacos,spring,微服务,Powered by 金山文档

这里会去设置父容器,然后加载nacos配置

而子容器加载的方法在this.prepareContext 之后,所以如果nacos配置不在bootstrap.properties里面那么,在获取nacos配置的时候NacosConfigProperties里面就没有值,而是等到子容器加载完了才有值文章来源地址https://www.toymoban.com/news/detail-526277.html

到了这里,关于Nacos做配置中心,配置要写在bootstrap.properties的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Nacos 注册中心和配置中心

                            打开nacos虚拟机

    2024年02月06日
    浏览(37)
  • Nacos配置中心 (介绍与配置)

    当微服务部署的实例越来越多,达到数十、数百时,逐个修改微服务配置就会让人抓狂,而且很容易出错。我们需要一种统一配置管理方案,可以集中管理所有实例的配置。 Nacos一方面可以将配置集中管理,另一方可以在配置变更时,及时通知微服务,实现配置的热更新。

    2024年02月02日
    浏览(38)
  • Nacos基础介绍—配置中心

    在微服务架构中,配置中心就是统一管理各个微服务配置文件的服务。把传统的单体jar包拆分成多个微服务后,配置文件也要拆分,每个微服务都要有自己的配置文件。为了统一维护,方便管理,所以出现了配置中心的概念。所有的微服务配置文件都在配置中心中管理和读取

    2024年02月12日
    浏览(42)
  • Nacos实现配置中心

    统一管理不同环境、不同集群的配置 配置修改实时生效(热发布) 版本管理,每次配置的修改都会有版本记录,可随时回滚 权限管理。配置中心可交给专人来管理,做到配置的权限管理 使用配置中心之前,一般这样实现配置,把配置都放到配置文件中,Java代码通过@Value去拿

    2024年02月16日
    浏览(62)
  • Nacos源码 (4) 配置中心

    本文阅读nacos-2.0.2的config源码,编写示例,分析推送配置、监听配置的原理。 构造方法: 创建ConfigFilterChainManager - 过滤器链 创建ServerListManager - 服务器列表管理 创建ClientWorker - 用来发送请求,内部封装了一个ConfigRpcTransportClient类型对象agent,它能够获取到RpcClient与服务端进行

    2024年02月12日
    浏览(28)
  • 使用Nacos作为配置中心

    目录 Nacos配置中心简介 配置中心的思路是: Nacos Config入门 Nacos配置实时更新及同一个微服务不同环境的差异化配置 1 搭建nacos环境【使用现有的nacos环境即可】(上篇文章有Nacos环境搭建) 2 在微服务公共模块中引入nacos的依赖  3 在微服务service-product中添加nacos config的配置 4 在

    2024年02月05日
    浏览(66)
  • Nacos:配置中心(三)

    目录 1.Nacos定位 2.Nacos的安装配置 3.整合Nacos 3.1.Nacos安装 3.2.Nacos登录 3.3.配置Nacos      4.Nacos使用 4.1.引入 Maven 依赖 4.2.配置bootstrap.yml 4.3.Nacos配置类 4.4.启用Nacos服务 4.5.测试获取配置 5.加载多个配置文件 datasource-dev.yaml mybatis-plus-dev.yaml 本地文件bootstrap.yml Contro代码 测试结果

    2024年02月03日
    浏览(40)
  • springboot+nacos配置中心获取配置失败

    配置写在boostrap.yml中,因为bootstrap.yml启动要先于application.yml 参数说明 1. 检查参数是否正确 需要注意的是namespace对应的是nacos中的命名空间的ID 并不是命名空间的名称 2.检查nacos的版本和启动方式 如果nacos的版本是2.0 启动方式是docker容器启动,那么就需要检查启动nacos的映射

    2024年02月13日
    浏览(45)
  • springcloud整合nacos配置中心

    前言 在当今快速发展的云原生应用开发环境中,配置中心的重要性不言而喻。 Nacos作为一个开源的动态服务发现、配置管理和服务管理平台,为开发者提供了一种简单而强大的方式来管理应用程序的配置信息。 而Spring Boot作为一个快速构建应用程序的框架,与Nacos的结合可以

    2024年02月08日
    浏览(52)
  • Nacos-手写配置中心基本原理

    本文已收录于专栏 《中间件合集》 Nacos注册中心:https://blog.csdn.net/weixin_45490198/article/details/131256597   在系统开发过程中,开发者通常会将一些需要变更的参数、变量等从代码中分离出来独立管理,以独立的配置文件的形式存在。目的是让静态的系统工件或者交付物(如

    2024年02月10日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包