SpringCloud Alibaba之Nacos配置中心配置详解

目录

    • Nacos配置中心数据模型
    • Nacos配置文件加载
    • Nacos配置

Nacos配置中心数据模型

在这里插入图片描述
Nacos 数据模型 Key 由三元组唯一确定,三元组分别是Namespace、Group、DataId,Namespace默认是公共命名空间(public),分组默认是 DEFAULT_GROUP。

Namespace(命名空间)
用于进行租户粒度的配置隔离。不同的命名空间下,可以存在相同的 Group 或 Data ID 的配置。Namespace 的常用场景之一是不同环境的配置的区分隔离,例如开发测试环境和生产环境的资源(如配置、服务)隔离等。

Group(分组)
Nacos 中的一组配置集,通过一个有意义的字符串对配置集进行分组,从而区分 Data ID 相同的配置集。您在 Nacos 上创建一个配置时,如果未填写配置分组的名称,则配置分组的名称默认采用 DEFAULT_GROUP 。配置分组的常见场景:不同的应用或组件使用了相同的配置类型,如 database_url 配置和 MQ_topic 配置。

DataId(配置ID)
Nacos中的某个配置集合的ID,一个系统或者应用可以包含多个配置集,每个配置集都可以被一个有意义的名称标识。

nacos是根据这三个属性来确定一个配置文件

Nacos配置文件加载

在 Nacos 配置中心中,默认情况下,应用会加载以下几个配置文件(按优先级从高到低):

1、Data ID 为 ${spring.application.name}.${spring.cloud.nacos.config.file-extension} 的配置文件:

如果使用了使用 Profile 进行多环境配置,那么优先加载带环境(dev/test/prod)的配置文件

${spring.application.name}-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} 的优先级比
${spring.application.name}.${spring.cloud.nacos.config.file-extension} 高,如果两个配置文件有相同的配置,那么会以带环境(spring.profiles.active)的配置文件为准

2、默认分组为 DEFAULT_GROUP 的全局配置文件:
Data ID 为 application.${spring.cloud.nacos.config.file-extension}。这是一个全局的通用配置文件,适用于所有应用。

例如,如果 spring.cloud.nacos.config.file-extension 设置为 properties,则会加载默认分组下的 application.properties 这个配置文件。

3、指定 Group 的全局配置文件:
Data ID 为 application.${spring.cloud.nacos.config.file-extension},Group 可以自定义。这也是一个全局的通用配置文件,适用于所有应用。

例如,如果 spring.cloud.nacos.config.file-extension 设置为 properties,Group 设置为 common,则会加载common分组下的application.properties 配置文件。

Nacos配置

spring.cloud.nacos.config 是 Spring Cloud Alibaba 中提供的一个配置管理模块,用于从 Nacos 中心化配置中心获取应用配置信息,里面可以配置nacos配置中心的各种信息。

下面是 spring.cloud.nacos.config 中常用的配置项及其作用,前缀为spring.cloud.nacos.config:

server-addr: Nacos 服务器地址列表,可以配置多个地址。
namespace: 命名空间 ID,用于区分不同环境和应用。
group: 配置分组,默认为 DEFAULT_GROUP。
username 和 password: 访问 Nacos 服务器所需的用户名和密码,可选。
file-extension: 配置文件格式后缀,默认为 properties。
endpoint: Nacos 服务器的域名解析地址,可选。
access-key 和 secret-key: 阿里云用户访问 Nacos 的 AccessKey 和 SecretKey,可选。
context-path: Nacos 服务器访问路径前缀,可选。
config-long-poll-timeout: 配置拉取长轮询超时时间,单位为毫秒,默认为 30000 毫秒。
refresh-enabled: 用于控制是否启用配置刷新功能,默认为true

下面介绍一下两个引入额外配置文件的属性

shared-configs
在 Nacos 配置中心中,可以使用 shared-configs 配置项来实现共享配置。shared-configs 允许多个应用共享同一个配置文件,这样可以避免重复的配置数据,并方便统一管理和更新。

下面是 shared-configs 的配置示例:

spring.cloud.nacos.config.shared-configs[0].data-id=shared-config
spring.cloud.nacos.config.shared-configs[0].group=DEFAULT_GROUP
spring.cloud.nacos.config.shared-configs[0].refresh=true
spring.cloud.nacos.config.shared-configs[1].data-id=shared-config2
spring.cloud.nacos.config.shared-configs[1].group=DEFAULT_GROUP

配置文件从[0]开始递加

Shared-configs支持三个属性:data-id、group(默认为字符串DEFAULT_GROUP)和refresh(默认为true)。

data-id 是共享配置的 ID,group 是共享配置所属的分组,默认为 DEFAULT_GROUP,refresh为是否刷新配置,默认为true

extension-configs
在 Nacos 配置中心中,可以使用 extension-configs 配置项来加载额外的配置文件。这样可以方便地将不同环境或者不同应用的配置文件进行分离

下面是 extension-configs 的配置示例:

spring.cloud.nacos.config.extension-configs[0].data-id=example-dev.yml
spring.cloud.nacos.config.extension-configs[0].group=DEFAULT_GROUP
spring.cloud.nacos.config.extension-configs[0].file-extension=yaml

extension-configs支持的属性与Shared-configs一样,都是data-id、group和refresh

在实际使用中,shared-configs 和 extension-configs 可以一起使用,以达到更好的管理和维护效果。例如,可以将共享配置文件和环境相关的配置文件分别存放在不同的命名空间或者分组中,并使用相应的配置项来引用这些配置。这样,不同应用可以共享相同的配置,同时又可以根据需要加载不同的环境配置。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

聚类分析 | Matlab实现基于RIME-DBSCAN的数据聚类可视化

聚类分析 | Matlab实现基于RIME-DBSCAN的数据聚类可视化 目录 聚类分析 | Matlab实现基于RIME-DBSCAN的数据聚类可视化效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.聚类分析 | Matlab实现基于RIME-DBSCAN的数据聚类可视化(完整源码和数据) 2.多特征输入&…

HarmonyOS 应用开发学习笔记 状态管理概述

移动端开发,最重要的一点就是数据的处理,并且正确的显示渲染UI。 变量在页面和组件、组件和组件之间有时候并不能实时共享,而有时候,又不需要太多的作用域(节省资源),作用就需要根据不同场景&am…

MQ 发消息的4种姿势

微服务开发中经常会使用消息队列进行跨服务通信。在一个典型场景中,服务A执行一个业务逻辑,需要保存数据库,然后通知服务B执行相应的业务逻辑。在这种场景下,我们需要考虑如何发送消息。 1. 基础版 首先,我们可能会考虑将数据库操作和消息发送放在同一个事务中,以下是伪…

深度学习笔记

激活函数 激活函数可以让神经网引入非线性性质,去除线性相关特征映射,是网络捕获数据中的不同特征;relu max(0,x)输出为0到正无穷sigmod输出为0-1 形状为srelu 输出为-1-1 以0为中心,形状为s …

【STM32】STM32学习笔记-ADC模数转换器(21)

00. 目录 文章目录 00. 目录01. ADC简介02. ADC主要特征03. 逐次逼近型ADC04. ADC功能描述05. ADC基本结构06. 输入通道07. 转换模式08. 触发控制09. 数据对齐10. 转换时间11. 校准12. 硬件电路13. 附录 01. ADC简介 小容量产品是指闪存存储器容量在16K至32K字节之间的STM32F1…

再次拓宽信创生态版图,思迈特与统信软件完成产品兼容适配认证

近日,思迈特软件与统信软件科技有限公司(简称“统信软件”)完成产品兼容性适配互认证,加速国产信创生态化建设进程。 本次测试由商业智能与数据分析软件(简称:Smartbi Insight V11)产品与统信服…

AMEYA360分享:太阳诱电导电性高分子混合铝电解电容器

随着汽车电动化和电子控制化的进展,车载计算机和电气部件也在逐渐向大功率化的方向发展。而构成这些车载设备电源电路的电子元器件也必须随之进行技术革新。 太阳诱电集团携手全资子公司ELNA,开发并供应新型电容器“导电性高分子混合铝电解电容器”&…

农业银行RPA实践 3大典型案例分析

零接触开放金融服务在疫情之下被越来越多的银行和客户所认同,引起了更广泛的持续关注,各家银行纷纷开展产品服务创新,加速渠道迁移,同时通过远程办公、构建金融生态等方式积极推进零接触开放金融体系建设。 随着商业银行科技力量的…

JSP页面访问JDBC数据库的六个步骤

【例】创建exgample11_1.jsp页面&#xff0c;并在该页面中使用纯Java数据库驱动程序连接数据库test&#xff0c;并查询数据表goods中的数据。 <% page language"java" contentType"text/html;charsetUTF-8" pageEncoding"UTF-8"%> <% …

Flink窗口与WaterMark

本文目录 窗口的生命周期Window Assigners窗口函数&#xff08;Window Functions&#xff09;TriggersEvictorsAllowed Lateness 窗口 窗口&#xff08;Window&#xff09;是处理无界流的关键所在。窗口可以将数据流装入大小有限的“桶”中&#xff0c;再对每个“桶”加以处理。…

基于低代码的指尖遐想_3

低代码需要回答三个问题&#xff1a; 1、是否降低了门槛&#xff1f; 2、是否提高了效能&#xff1f; 3、使用者用户画像&#xff1f; 广义低代码&#xff0c;从项目全局维度&#xff08;项目启动、需求调研、方案设计、配置开发、系统验收、系统运营&#xff09;进行了解答。…

使用Termux+Hexo搭建个人博客结合内网穿透工具轻松实现公网访问内网博客

文章目录 前言 1.安装 Hexo2.安装cpolar3.远程访问4.固定公网地址 前言 Hexo 是一个用 Nodejs 编写的快速、简洁且高效的博客框架。Hexo 使用 Markdown 解析文章&#xff0c;在几秒内&#xff0c;即可利用靓丽的主题生成静态网页。 下面介绍在Termux中安装个人hexo博客并结合…

【算法每日一练]-动态规划 (保姆级教程 篇15)#动物 #赶deadline #page #构造字符串

目录 今日知识点&#xff1a; 01背包的路径输出 计算位和的数位dp 不用管字符串&#xff0c;只需要看好约束dp转移的变量 动物 赶deadline page 构造字符串 动物 有某类动物&#xff0c;可以在农场待n天&#xff0c;每天最多增加一只动物&#xff0c;第i天到来的动物每…

Android开发,jni,ndk开发,调用fmod音频库,音效引擎库

文章目录 Android开发&#xff0c;jni&#xff0c;ndk开发&#xff0c;调用fmod音频库&#xff0c;音效引擎库1.fmod介绍2.cmake3.C代码实践 Android开发&#xff0c;jni&#xff0c;ndk开发&#xff0c;调用fmod音频库&#xff0c;音效引擎库 1.fmod介绍 https://www.fmod.c…

前端常用的几种算法的特征、复杂度、分类及用法示例演示

算法&#xff08;Algorithm&#xff09;可以理解为有基本运算及规定的运算顺序所构成的完整的解题步骤&#xff0c;或者看成按照要求设计好的有限的确切的计算序列&#xff0c;并且这样的步骤和序列可以解决一类问题。算法代表着用系统的方法描述解决问题的策略机制&#xff0c…

两整数之和 -- 位运算

个人主页&#xff1a;Lei宝啊 愿所有美好如期而遇 本题链接 力扣&#xff08;LeetCode&#xff09; 输入描述 输入两个要相加的数&#xff0c;a和b 输出描述 返回a和b的和&#xff0c;这里其实直接return ab; 直接就过了&#xff0c;但是人题目要求还是给点面子~ 算法…

mariadb实现主从同步

准备两台服务器 Mariadb-Master&#xff1a;192.168.44.150 Mariadb-Backup&#xff1a;192.168.44.148 安装mariadb&#xff1a; https://blog.csdn.net/qq_50247813/article/details/135402502?spm1001.2014.3001.5502 组从复制原理如下 修改主数据库配置如下 vi /etc/my.…

钼铁,需求量将推动市场进入新一轮发展浪潮

钼铁是一种重要的冶金原料&#xff0c;广泛用于制造高速钢、不锈钢、合金钢、特殊钢等钢材&#xff0c;并且被广泛应用于核工业、电子工业、航空航天等高技术产业领域。随着钢铁市场的不断发展&#xff0c;钼铁市场也逐渐壮大&#xff0c;下面将从全球市场和中国市场分析其发展…

自学 c++ 要掌握哪些技巧和方法?

自学 c 要掌握哪些技巧和方法&#xff1f; 在开始前我有一些资料&#xff0c;是我根据网友给的问题精心整理了一份「C的资料从专业入门到高级教程」&#xff0c; 点个关注在评论区回复“888”之后私信回复“888”&#xff0c;全部无偿共享给大家&#xff01;&#xff01;&…

大模型在现代应用中的多元实例

目录 前言1 GPT-3、GPT-3.5、GPT-4&#xff1a;自然语言处理的新纪元1.1 GPT-3与传统NLP方法的区别1.2 GPT-3.5 和 GPT-4 的进展1.3 技术背后的革新 2 自然语言转换为Python代码2.1 简介2.2 技术原理2.3 应用和优势 3 DALL-E 2&#xff08;5B&#xff09;图像生成3.1 简介3.2 技…