Nacos命名空间与配置分组

本文介绍了Nacos配置管理中的核心概念,包括命名空间用于服务间的配置隔离,配置集是所有配置的集合,配置集ID对应配置文件名,配置分组用于区分不同环境如dev、test、prod。通过设置bootstrap.properties,可以指定微服务使用的命名空间、分组,并加载多个配置集,如datasource.yml、mybatis.yml和other.yml。
部署运行你感兴趣的模型镜像

一、命名空间:配置隔离。默认:public(保留空间);默认新增的所有配置都在public空间。

1.每一个微服务之间相互隔离配置,每一个微服务都创建自己的命名空间,只加载自己命名下的所有配置,利用命名空间做环境隔离。

在这里插入图片描述

2.在bootstrap.properties 配置需要使用哪个命名空间下的配置。

spring.cloud.nacos.config.namespace=命名空间ID

在这里插入图片描述
二、配置集:所有的配置的集合。
在这里插入图片描述

三、配置集ID:配置文件名

在这里插入图片描述
四、配置分组。默认所有的配置集都属于:DEFAULT_GROUP

1.每个微服务创建自己的命名空间,使用配置分组区分环境:dev,test,prod 在bootstrap.properties 配置分组

spring.cloud.nacos.config.group=dev

在这里插入图片描述
五、同时加载多个配置集

1.微服务任何配置信息,任何配置文件都可以放在配置中心中。

在这里插入图片描述

datasource.yml

在这里插入图片描述

mybatis.yml

在这里插入图片描述

other.yml

在这里插入图片描述

2.只需要在bootstrap.properties中说明加载配置中心里面有那些配置文件即可。

在这里插入图片描述

spring.application.name=gulimall-coupon

spring.cloud.nacos.config.server-addr=127.0.0.1:8848
spring.cloud.nacos.config.namespace=1df80186-5c93-4337-8aaf-1b04445f4c71
spring.cloud.nacos.config.group=dev

spring.cloud.nacos.config.ext-config[0].data-id=datasource.yml
spring.cloud.nacos.config.ext-config[0].group=dev
spring.cloud.nacos.config.ext-config[0].refresh=true

spring.cloud.nacos.config.ext-config[1].data-id=mybatis.yml
spring.cloud.nacos.config.ext-config[1].group=dev
spring.cloud.nacos.config.ext-config[1].refresh=true

spring.cloud.nacos.config.ext-config[2].data-id=other.yml
spring.cloud.nacos.config.ext-config[2].group=dev
spring.cloud.nacos.config.ext-config[2].refresh=true

您可能感兴趣的与本文相关的镜像

ACE-Step

ACE-Step

音乐合成
ACE-Step

ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言

### Nacos 命名空间配置文件的存储位置 Nacos命名空间配置文件在存储时分为两种情况:**内存存储****持久化存储**。以下是详细的说明: #### 1. 内存存储 Nacos 在运行时会将命名空间相关的配置信息加载到内存中,以便快速访问使用。这些信息包括命名空间的 ID、名称以及其他元数据。这种存储方式提高了读取效率,但并不适合长期保存或跨节点共享[^1]。 #### 2. 持久化存储 Nacos配置持久化存储依赖于其底层数据库。默认情况下,Nacos 使用嵌入式数据库(如 Derby)来存储配置信息。如果启用了外部数据库支持,则配置信息会被存储到指定的数据库中,例如 MySQL 或 PostgreSQL。具体存储位置如下: - **默认存储位置**:当未配置外部数据库时,Nacos配置信息会被存储在其安装目录下的 `data` 文件夹中。该文件夹通常位于 Nacos Server 的根目录下,路径为 `nacos/data`[^2]。 - **外部数据库存储**:如果启用了外部数据库支持,则命名空间配置信息会被存储到数据库的特定表中。以 MySQL 为例,相关表包括: - `config_info`:存储具体的配置内容。 - `config_info_beta`:存储测试环境的配置信息。 - `config_tags_relation`:存储配置标签的关系。 - `group_capacity`:存储分组的容量信息。 - `his_config_info`:存储历史配置信息。 在实际部署中,可以通过修改 Nacos配置文件 `application.properties` 来指定外部数据库的连接信息。例如: ```properties spring.datasource.platform=mysql db.num=1 db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&serverTimezone=UTC&useSSL=false db.user=nacos db.password=nacos ``` 上述配置指定了 Nacos 使用 MySQL 数据库进行配置持久化,并定义了数据库的连接地址、用户名密码[^3]。 #### 3. 配置文件的具体存储逻辑 当创建一个新的命名空间时,Nacos 会在其内部数据库中插入一条记录,记录该命名空间的元信息(如 ID 名称)。随后,所有属于该命名空间配置文件都会被打上对应的命名空间标识,并存储到相应的数据库表中[^4]。 例如,假设创建了一个名为 `dev` 的命名空间,其 ID 为 `dev-namespace-id`,那么所有属于该命名空间配置文件都会在 `config_info` 表中带有 `tenant_id='dev-namespace-id'` 的标记。 #### 4. 配置文件的检索机制 当微服务从 Nacos 获取配置时,Nacos 客户端会根据以下优先级顺序查找配置文件: 1. 根据指定的 Data ID Group 查找配置。 2. 如果 Data ID Group 不唯一,则进一步根据命名空间 ID 进行过滤。 3. 如果仍然无法找到匹配的配置,则返回默认值或抛出异常[^5]。 ### 注意事项 - 如果 Nacos Server 的数据目录被删除或损坏,可能会导致配置丢失。因此建议定期备份 `nacos/data` 目录中的内容[^6]。 - 当使用外部数据库时,确保数据库的高可用性容灾能力,以避免因单点故障导致配置不可用。 ---
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值