谷粒商城实战笔记-24-分布式组件-SpringCloud Alibaba-Nacos配置中心-命名空间与配置分组

文章目录

本节内容详细介绍Nacos配置中心的密码空间和DataId。

一,命名空间

1,简介

在Nacos中,命名空间(Namespace)是一种逻辑隔离的机制,用于区分不同环境或不同租户的配置和服务。

1.1,命名空间的主要功能和特点

  • 环境隔离:通过命名空间,可以隔离开发、测试和生产环境的配置和服务,确保它们不会相互干扰。
  • 租户隔离:在多租户场景下,命名空间可以隔离不同租户的配置和服务,保证租户之间的数据安全和隔离性。
  • 配置管理:命名空间允许用户在不同的命名空间中管理不同的配置集,便于跨环境的配置同步和管理。
  • 服务发现:在服务发现方面,命名空间可以帮助用户在特定的命名空间内查找和访问服务,实现服务的逻辑隔离。
  • 权限控制:Nacos的权限控制可以细化到命名空间级别,允许对不同命名空间的访问进行权限设置。

1.2,使用场景

  • 多环境部署:在开发、测试和生产环境中使用不同的命名空间,以避免配置和服务的冲突。
  • 多租户系统:在云服务或SaaS应用中,使用命名空间来隔离不同租户的服务和配置。
  • 组织结构管理:在大型组织中,使用命名空间来区分不同部门或团队的服务和配置。

1.3,如何指定命名空间

如何在配置文件中指定要使用的密码空间呢?

每个命名空间都有一个唯一的ID,除了public空间外,如果要指定命名空间,只需要将这个命名空间的ID配置到配置文件中即可。

如下图,复制命名空间I。

配置到bootstrap.properties文件中。

clike 复制代码
spring.cloud.nacos.config.namespace=346bb1d1-5520-443f-96cb-9f5f36fe864f

注意必须配置命名空间的ID,不能配置为命名空间的名称。

2,命名空间实战

2.1,环境隔离

在实际工作中,一般都有开发、测试、生产三套环境,每套环境的配置肯定是不一样的, 比如测试环境和生成环境的数据库连接信息肯定不一样。

那么,针对这个情况,可以创建三个命名空间:

  • dev,开发环境
  • test,测试环境
  • prod,生产环境

然后,不同的环境读取不同命名空间的配置。

比如,在配置文件指定命名空间为dev,测试结果如下图

clike 复制代码
spring.cloud.nacos.config.namespace=346bb1d1-5520-443f-96cb-9f5f36fe864f

2.2,服务隔离

在有很多个服务、每个服务有很多配置文件的情况下,可以给每个服务建立一个命名空间,把这个服务的所有配置文件都放在这个密码空间中。

比如,给谷粒商城的优惠券服务建立命名空间coupon

然后把coupon服务相关的所有配置文件都放在这个密码空间下,在配置文件中指定命名空间ID,就可以读取配置文件了。

clike 复制代码
spring.cloud.nacos.config.namespace=b72ad17c-3b0d-42d1-aec0-2015ac543335

当然,命名空间还有其他的使用方式,要结合实际情况进行设计。

二,配置集

配置集是一个逻辑概念,一组配置的集合。

当我们在Nacos上点击创建配置按钮

配置完成,点击发布的结果就是创建了一个配置集。

三,配置集ID

配置集ID就是Data Id。

每一个配置即都有一个唯一的Data Id,某种程度上可以理解为配置文件名。但其不是文件名,Nacos上的配置都保持在数据库中,而不是像本地文件那样直接以文件的形式存储。

相关推荐
楚韵天工3 小时前
宠物服务平台(程序+文档)
java·网络·数据库·spring cloud·编辑器·intellij-idea·宠物
大数据003 小时前
CLICKHOUSE分布式表初体验
分布式·clickhouse
失散133 小时前
分布式专题——43 ElasticSearch概述
java·分布式·elasticsearch·架构
ajsbxi3 小时前
【Java 基础】核心知识点梳理
java·开发语言·笔记
呱呱巨基3 小时前
vim编辑器
linux·笔记·学习·编辑器·vim
新子y3 小时前
【小白笔记】普通二叉树(General Binary Tree)和二叉搜索树的最近公共祖先(LCA)
开发语言·笔记·python
聪明的笨猪猪4 小时前
Java JVM “调优” 面试清单(含超通俗生活案例与深度理解)
java·经验分享·笔记·面试
爱学习的uu4 小时前
CURSOR最新使用指南及使用思路
人工智能·笔记·python·软件工程
YuCaiH4 小时前
Linux文件处理
linux·笔记·嵌入式
Cathy Bryant4 小时前
大模型损失函数(二):KL散度(Kullback-Leibler divergence)
笔记·神经网络·机器学习·数学建模·transformer