为什么Spring Cloud 应用程序中,应用程序的加载配置必须写在bootstrap.yaml这个配置文件中,是在哪里规定的?

在 Spring Cloud 应用程序中,bootstrap.yaml(或bootstrap.properties)的使用并非强制性的,但它扮演着一个特定的角色,主要是因为 Spring Cloud 的设计和工作流程。

背景和设计

Spring Cloud 构建在 Spring Boot 之上,提供了用于开发分布式系统中常见模式的工具,如配置管理、服务发现、断路器等。为了实现这些功能,Spring Cloud 需要在应用程序的正常启动流程之前读取配置信息,比如从配置服务器获取配置或设置服务发现客户端。

bootstrap 上下文的角色

  • 早期配置加载bootstrap.yaml 用于在应用程序的ApplicationContext创建之前加载配置信息,创建一个“bootstrap”上下文。这个上下文负责从外部源加载配置(例如,配置服务器)并使其在主应用程序上下文启动之前可用。
  • 应用程序上下文与Bootstrap上下文:Bootstrap上下文是父上下文,而应用程序上下文是它的子上下文。这意味着在bootstrap上下文中定义的任何配置都会优先于应用程序上下文中的配置。

官方文档和实践

虽然 Spring Cloud 文档提到了 bootstrap.yaml 的使用,但并没有强制规定所有的配置都必须放在这里。bootstrap.yaml 的使用主要是由于上述设计决定,这是为了满足特定的技术需求,如动态配置更新、密钥管理等。

Spring Cloud 2020.0.0(也称为 Ilford)及更新版本的变化

值得注意的是,从 Spring Cloud 2020.0.0 开始,Spring Cloud 引入了新的配置处理方式,这可能改变了 bootstrap.yaml 的使用。在这个和后续版本中,可以通过 Spring Boot 的原生配置文件(application.yamlapplication.properties)管理早期配置,使用新的属性加载机制。这是通过设置spring.config.import属性来实现的,可以指定配置服务器等外部配置源。

结论

bootstrap.yaml 的使用是基于 Spring Cloud 对特定配置管理需求的解决方案。虽然不是强制性的,但它在早期配置加载和特定Spring Cloud 功能(如配置刷新)中发挥着关键作用。随着 Spring Cloud 的发展,这些实践可能会发生变化,建议查阅最新的 Spring Cloud 文档以获取当前的最佳实践。
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/722174.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

鸿蒙 Stage模型-应用组件-配置、UIAbility

前提:基于官网3.1/4.0文档。参考官网文档 基于Android开发体系来进行比较和思考。(或有偏颇,自行斟酌) 一、概念 可以看到分为运行期、编译器,主要关注UIAbility(类似Activity,UI相关&#xff0…

2024年软考-官方最新考试安排出来了,软考新调整,很重要,但也很惹人气愤

官方最新通知,关于2024年度计算机技术与软件专业技术资格(水平)考试工作计划 笔试改机考后,必然会迎来调整,但有点让人费解。 这次调整变动主要是每年考试的次数调整,很多改为了一年一考,具体…

Claude 3 模型发布,压力来到OpenAI这边了~

Anthropic 发布了 Claude 3 系列,包含了三款模型 各具特色,旨在为用户提供更智能、更快速、更高效的选择,可以说是是迄今为止最快、最强大的人工模型! Anthropic 一度是 OpenAI 最强力的竞争对手! 随着 Claude3 的发…

云计算 3月5号 (DNS域名解析及部署)

DNS域名解析服务 1.DNS介绍 DNS 是域名系统 (Domain Name System) 的缩写,是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。…

408专业课130+|我的备考经验和复盘

408的四门课任务量多到爆炸!但难度不止于此。别忘了大部分选计算机的勇士们,是要考数学的!直接起飞。 408数学无疑是王炸王炸,要想上岸就一定要把这两个大头一起拿下! 作为一个成功上岸的非计算机专业跨考生&#xf…

CSS全局样式的设置,web开发交流

面试题 HTML 1,html5有哪些新特性? 2,html5移除了那些元素? 3,如何处理HTML5新标签的浏览器兼容问题 戳这里领取完整开源项目:【一线大厂前端面试题解析核心总结学习笔记Web真实项目实战最新讲解视频】…

day58 异常 IO流

异常 1异常处理机制 编译时错误 运行时错误 代码逻辑错误 2异常类结构图 java.lang.Throwable 所有异常的父类 只有它能剖出异常 java.lang.Error: extends Throwable 程序中的硬件严重问题不需要处理 java.lang.Exception extends Throwable 异常 指出要捕获的处理条件 3异常…

深入理解现代JavaScript:从语言特性到应用实践

💂 个人网站:【 海拥】【神级代码资源网站】【办公神器】🤟 基于Web端打造的:👉轻量化工具创作平台💅 想寻找共同学习交流的小伙伴,请点击【全栈技术交流群】 JavaScript作为一门动态、解释性脚本语言&…

网络工程师笔记8

华为VRP系统 设备管理方式 web管理方式 命令行管理方式 修改命令:undo 基础配置命令

INFINI Labs 产品更新 | Easysearch 1.7.1发布

INFINI Labs 产品又更新啦~,包括 Console,Gateway,Agent 1.23.0 和 Easysearch 1.7.1。此次版本重点修复历史遗留 Bug 、网友们提的一些需求等。以下是本次更新的详细说明。 INFINI Console v1.23.0 INFINI Console 是一款非常轻量级的多集…

express+mysql+vue,从零搭建一个商城管理系统9--添加商户

提示:学习express,搭建管理系统 文章目录 前言一、新建models/shop.js二、新建routes/shop.js三、修改routes下的index.js四、添加商户总结 前言 需求:主要学习express,所以先写service部分 一、新建models/shop.js models/shop.…

PortSwigger 基于dom的漏洞-利用 DOM 破坏来启用 XSS

进入实验随意进入一篇博客 我们可以尝试随意提交一些恶意代码看看会发生什么 很显然我们提交成功了但是我们的恶意代码貌似被过滤了 查看源码发现这里有一个过滤框架 我们打开源码分析 function loadComments(postCommentPath) {let xhr new XMLHttpRequest();xhr.onreadys…

#QT(串口助手-实现)

1.IDE:QTCreator 2.实验 3.记录 (1)在widget.h中加入必要文件,并且定义一个类指针 (2)如果有类的成员不知道怎么写,可以通过以下途径搜索 (2)设置串口数据 void Widget…

海王星(Neptune)系列和大禹(DAYU)系列OpenHarmony智能硬件配置解决方案

海王星(Neptune)系列和大禹(DAYU)系列OpenHarmony智能硬件对OS的适配、部件拼装配置、启动配置和文件系统配置等。产品解决方案的源码路径规则为:vendor/{产品解决方案厂商}/{产品名称}_。 解决方案的目录树规则如下&…

推理判断01-程永乐-图形1

课程安排 出题形式 图形推理 1、位置规律 图形题目

首尔之春在线资源最新电影1080p高清

打开下面这个链接就可以看到 首尔之春在线资源最新电影1080p高清 如果链接打不开,就复制下面的网址到浏览器打开 https://www.zhufaka.cn/liebiao/A09504AE3BF8BD06 用阿里云盘下载,下载完成之后,用迅雷播放 首尔之春在线资源最新电影10…

winui开发笔记(五)应用程序图标

应用程序图标、发布者、显示名称大部分都在package.appxmanifest清单文件中,可以正常打开,也可以使用xml文本编辑器打开。 以下是一个正常的应用程序中所有的与图标相关的图片: 但是设置之后会有一圈白,包括在电脑最下边一行&…

HDFS简介与部署以及故障排错(超简单)

文章目录 一、HDFS介绍1、简介2、结构模型3、文件写入过程4、文件读取过程5、文件块的存放6、存储空间管理机制6.1 文件删除和恢复删除6.2 复制因子配置6.3 文件命名空间6.4 数据复制机制 二、环境搭建(单机版)1、修改主机名2、配置ssh免密登录3、Hadoop…

自然语言:信息抽取技术在CRM系统中的应用与成效

一、引言 在当今快速变化的商业环境中,客户关系管理(CRM)已成为企业成功的关键因素。CRM系统的核心在于有效地管理客户信息,跟踪与客户的每一次互动,以及深入分析这些数据以提升客户满意度和忠诚度。在我最近参与的一个…

O2O:Offline–Online Actor–Critic

IEEE TAI 2024 paper 1 Introduction 一篇offline to online 的文章,有效解决迁移过程出现的performance drop。所提出的O2AC算法首先在离线阶段添加一项BC惩罚项,用于限制策略靠近专家策略;而在在线微调阶段,通过动态调整BC的权…