当前位置: 首页 > news >正文

Nacos配置的优先级

配置文件优先级和覆盖规则

1. 配置文件的优先级

在多个配置文件中,如果存在相同的配置项,通常有一个优先级规则来决定最终使用哪个配置值。具体规则取决于系统的设计和实现,但通常遵循以下原则:

  • 更具体的配置覆盖更通用的配置:例如,环境特定的配置文件通常覆盖默认配置文件的值。
  • 后加载的配置覆盖先加载的配置:文件加载顺序通常影响配置的优先级,后加载的配置文件会覆盖之前加载的配置值。
2. shard-configs 和 extension-configs 文件优先级
  • shard-configs: 这些配置文件通常用于定义分片配置或针对特定分片的配置。这些配置往往比较具体,涵盖了特定的服务分片或环境。

  • extension-configs: 这些配置文件用于扩展或覆盖默认配置。这些文件通常用于添加或修改特定的扩展配置项,而不是替代整个配置集。

优先级规则:

  • 在 shard-configs 和 extension-configs 中存在相同配置时,通常 extension-configs 的优先级较高,因为它们通常用于覆盖或扩展默认配置。
  • extension-configs 文件通常是用于更细粒度的调整或扩展配置,因此它们会覆盖 shard-configs 中的相同配置项。
3. configdemo.yaml 和 configdemo-test.yaml 文件优先级
  • configdemo.yaml: 这是一个基本的配置文件,通常用于定义应用程序的默认配置。

  • configdemo-test.yaml: 这是测试环境或特定场景下的配置文件,通常优先级较高,用于覆盖或扩展默认配置。

优先级规则:

  • configdemo-test.yaml 通常具有较高的优先级,它覆盖 configdemo.yaml 中的配置项。这是因为测试或特定环境的配置往往需要覆盖默认的配置来适应不同的测试需求。

总结

  1. 相同配置项的覆盖规则:

    • 如果 shard-configs 和 extension-configs 中存在相同配置项,extension-configs 的值通常优先。
    • 如果 configdemo.yaml 和 configdemo-test.yaml 中存在相同配置项,configdemo-test.yaml 的值通常优先。
  2. 文件读取优先级:

    • configdemo-test.yaml > configdemo.yaml > extension-configs > shard-configs

解释:

  • configdemo-test.yaml 用于特定场景(如测试)而覆盖了 configdemo.yaml 的配置。
  • extension-configs 通常用于扩展和覆盖,优先级高于 shard-configs
  • shard-configs 一般用于定义分片相关的配置,优先级最低。

http://www.mrgr.cn/news/20237.html

相关文章:

  • Mysql梳理1——数据库概述(上)
  • C++ 原子变量atomic variable
  • webCppCluster
  • vs2022 如何去掉 错误|警告的波形曲线 绿色波浪线
  • Python知识点:Python研发中,如何使用JIRA进行项目管理
  • uniapp壁纸项目笔记
  • QT:动态库与静态库的生成和使用
  • HTML 文本标签
  • 财税系统集成Java发票查验接口代码示例
  • 零基础国产GD32单片机编程入门(十四)内部RTC实时时钟及实战含源码
  • 计算机大专生没有出路了吗?听听过来人怎么讲!
  • 面对市场变革,企业数字化转型的必要性与挑战何在?
  • 竟然有50万个使用Flutter开发的应用了,这也太牛了!
  • 如何缩放C#中的img
  • 司法军警行业ITSM案例分析报告
  • 解决Can‘t load tokenizer for ‘bert-base-chinese‘.问题
  • 【Linux】常见指令及权限相关知识详细梳理
  • linux基础IO——动静态库——实现与应用学习、原理深度解析
  • C++入门基础知识50——【关于C++数字】之C++ 数学运算
  • 解决linux云服务器ping不通另一台linux云服务器的问题