【SpringCloud应用框架】Nacos命名空间、分组和DataID三者关系

news2024/11/16 5:29:42

第五章 Spring Cloud Alibaba Nacos之命名空间、分组和DataID三者关系


文章目录

  • 一、名词解释
    • 三者关系
  • 二、切换不同环境
    • DataID方案
    • Group方案
    • Namespace空间方案


一、名词解释

命名空间(Namespace)

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

配置分组(Group)

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

配置集 ID(Data ID)

​Nacos 中的某个配置集的 ID。配置集 ID 是组织划分配置的维度之一。Data ID 通常用于组织划分系统的配置集。一个系统或者应用可以包含多个配置集,每个配置集都可以被一个有意义的名称标识。Data ID 通常采用类 Java 包(如 com.taobao.tc.refund.log.level)的命名规则保证全局唯一性。此命名规则非强制。

​配置集:一组相关或者不相关的配置项的集合称为配置集。在系统中,一个配置文件通常就是一个配置集,包含了系统各个方面的配置。例如,一个配置集可能包含了数据源、线程池、日志级别等配置项。

三者关系

这三者的关系类似于Java里面的package名和类名,最外层的Namespace是可以用于区分部署环境的,Group和DataID逻辑上区分两个目标对象。

在这里插入图片描述

默认情况
Namespace=public,Group=DEFAULT_GROUP,默认Cluster是DEFAULT。

具体情况
Nacos默认的命名空间是public,我们就可以利用Namespace来实现隔离,比如我们现在有三个环境:开发、测试、生产环境,我们就可以创建三个Namespace,不同的Namespace之间是隔离的。

Group本身就是分组的意思,它可以把不同的微服务划分到同一个分组里面去。

剩下的就是具体微服务,一个Service可以包含多个Cluster,Nacos默认Cluster是DEFAULT,Cluster是对指定微服务的一个虚拟划分。比如说,将一个Service部署在北京和和杭州的机房中,北京机房的Service就可以起名为(BJ),杭州机房中的Service就可以起名为(HZ),这样就可以尽量让同一个机房的微服务互相调用,提升性能。

二、切换不同环境

DataID方案

  1. 指定spring.profile.active和配置文件的DataID来使不同环境下读取不同的配置,配置规则:默认空间+新建dev和test两个DataId:
    新建dev配置DataID(在上一篇博客中已完成:Nacos服务配置中心)
    新建test配置DataID:

在这里插入图片描述

  1. 通过spring.profile.active属性就能进行多环境下配置文件的读取。
spring:
  profiles:
    # active: dev #表示开发环境
    active: test #表示测试环境

在这里插入图片描述
在这里插入图片描述

  1. 测试
    再次访问:http://localhost:8899/localhost/config/info
    在这里插入图片描述

Group方案

根据之前的分享我们可以知道Group为分组,默认是:DEFAULT_GROUP,所以现在需要分出两组,一组是“Dev开发环境组”,一组是“test测试环境组”

  1. 新建Group

DEV_GROUP
在这里插入图片描述
TEST_GROUP
在这里插入图片描述
配置列表,两个DataID一致,但是分组不同的配置文件:
在这里插入图片描述

  1. 通过bootstrap+application来配合完成
    在config下增加一条Group的配置即可,可以配置为DEV_GROUP或TEST_GROUP。
    bootstrap.yml:
# nacos配置
server:
  port: 8899

spring:
  application:
    name: nacos-config-client
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848 #Nacos服务注册中心地址
      config:
        server-addr: localhost:8848 #Nacos作为配置中心地址
        file-extension: yaml #指定yaml格式的配置
        group: TEST_GROUP #增加分组

application.yml

spring:
  profiles:
    # active: dev #表示开发环境	
    active: test #表示测试环境
  1. 测试(测试不同分组):
    访问:http://localhost:8899/localhost/config/info
    在这里插入图片描述

Namespace空间方案

Namespace(命名空间)方案,默认此方案为public,此方案不能删除,新建两个命名空间方案。
在这里插入图片描述
新建dev/test的Namespace。
在这里插入图片描述
在这里插入图片描述

  1. 服务管理-服务列表页面查看
    此时切换对应的命名空间,然后再通过Group和DataID来进行切换,如果想要切换命名空间,我们就需要通过命名空间ID来进行切换。
    在这里插入图片描述
  2. 按照域名配置(Namespace+Group+DataId)编写
    先通过namespace命名空间ID来确认使用的命名空间。
    在这里插入图片描述
# nacos配置
server:
  port: 8899

spring:
  application:
    name: nacos-config-client
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848 #Nacos服务注册中心地址
      config:
        server-addr: localhost:8848 #Nacos作为配置中心地址
        file-extension: yaml #指定yaml格式的配置
        group: TEST_GROUP # 指定分组
        namespace: 4ba4bf0e-210c-41ce-954c-23538de1dcbc #指定命名空间
spring:
  profiles:
    active: dev #表示开发环境
    # active: test #表示测试环境

然后再回到Nacos配置列表,添加Dev命名空间下的配置,添加3条:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3. 测试:
访问http://localhost:8899/localhost/config/info来进行测试。

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

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

相关文章

C++ 智能指针使用不当导致内存泄漏问题

shared_ptr相互嵌套导致循环引用 代码示例 #include <iostream> #include <memory> using namespace std;class B;class A { public:std::shared_ptr<B> b_ptr;~A() { std::cout << "A destroyed\n"; } };class B { public:std::shared_pt…

优选算法之技巧(一):双指针一:移位0与复写0

引用&#xff1a;我们之前学过快排&#xff0c;首先用三元取中&#xff0c;找(key)&#xff0c;然后就用到了双指针的方法来进行交换排序&#xff0c;那我们今天要讲的双指针其实大同小异&#xff0c;无非在数组中就变成了下标。 题一&#xff1a; 给定一个数组 nums&#xf…

云平台教程 | 手把手教你主成分分析PCA的可视化

爱基百客云平台小工具使用 1.1 爱基百客云平台之PCA分析 1.2 PCA分析原理 1.3 参数设置 1.4 任务查看 1.5 结果 1.5.1 PCA图 01 爱基百客云平台小工具使用 首先&#xff0c;打开爱基百客官网&#xff1a;http://www.igenebook.com&#xff1b;点击菜单栏最右侧“云平台”按钮…

藏汉翻译通工具推荐使用《藏文翻译词典》App:藏族文化的掌上宝典,帮助你了解学习藏语反义词近义词和藏文作文!

如果你正在学习藏语&#xff0c;遇到不同地区的发音不同时&#xff0c;卫藏语、安多语和康巴语&#xff0c;那么你需要一款好用的翻译和语音朗读工具&#xff0c;帮助你掌握藏语。 如果你正在用藏文写作文&#xff0c;发现一些词汇不会时&#xff0c;需要使用藏文词典&#xf…

盘点效率工具RunFlow那些容易被忽略的功能

本文我们将带您了解RunFlow有哪些容易被忽略、但是又非常实用的功能。 固定工作窗口 您还可以通过双击 Ctrl 键来切换窗口固定状态&#xff0c;您也可以在 热点事件 设置页面自定义该快捷键。 预览菜单内容 用浏览器打开剪贴板复制的URL 多行输入 按 CtrlEnter 或 ShiftEnter …

C语言 -- 深入理解指针(二)

C语言 -- 深入理解指针&#xff08;二&#xff09; 1. 数组名的理解2. 使用指针访问数组3. 一维数组传参的本质4. 冒泡排序5. 二级指针6. 指针数组7. 指针数组模拟二维数组8. 字符指针变量9. 数组指针变量2.1数组指针变量是什么&#xff1f;2.2 数组指针变量怎么初始化 10. 二维…

海外媒体发稿-全媒体百科

全球知名媒体机构 在全球范围内&#xff0c;有许多知名的新闻机构负责报道世界各地的新闻事件。以下是一些国外常见的媒体机构&#xff1a; AP&#xff08;美联社&#xff09;合众国际社&#xff08;UPI&#xff09;AFP(法新社)EFE&#xff08;埃菲通讯社&#xff09;Europa …

【vue】下载 打印 pdf (问题总结)- 持续更新ing

这里是目录标题 一、pdf1.查看 下载一、pdf 1.查看 下载 样式 Code<template><div><el-table :data="pdfList" style="width: 100%" border ><el-table-columnprop="index"label="序号"width="80"ali…

JVM:介绍

文章目录 一、什么是JVM二、JVM的功能1、解释和运行2、内存管理3、即时编译 三、常见的JVM四、Java虚拟机规范五、HotSpot发展历程 一、什么是JVM JVM的全称为Java Virtual Machine&#xff0c;Java虚拟机。本质上是一个运行在计算机上的程序&#xff0c;职责是运行Java字节码…

气膜体育馆作为临时赛场有哪些优势—轻空间

一、气膜体育馆简介 气膜体育馆是一种利用气膜技术建造的室内场馆&#xff0c;其结构主要由高强度膜材、充气系统和钢缆固定系统组成。通过向膜体内部充气&#xff0c;使其形成稳定的内部压力来支撑整个建筑结构。气膜体育馆因其快速建设、环保节能、灵活多样等优点&#xff0c…

tqdm进度条函数使用 python

1.作用&#xff1a; 通过使用 tqdm &#xff0c;可以让您在处理大量数据或长时间运行的循环时&#xff0c;更好地了解程序的执行进度&#xff0c;增强用户体验。 2.使用 ---可以使用 pip install tqdm 进行安装。 ---tqdm.tqdm(iterator可迭代对象&#xff0c;desc描述符&…

数据中台设计书及建设指南(中台及大数据解决技术方案)

1. 中台概念 2. 推动企业组织模式演进 3. 建设方法 4 .中台内容 5. 数据安全体系 中台内容围绕数据中台建设评估、整体框架、数据采集&#xff0c;结构化、半结构化、非结构化的数据采集&#xff0c;数据计算能力、存储计算引擎、数据架构、数据挖掘、各种不同数据层建设、模型…

7月8号直播预告 | 全国产EtherCAT运动控制器ZMC432HG及其EtherCAT驱动器与控制器常用回零模式介绍

EtherCAT运动控制边缘控制器是工业互联网的关键组件之一&#xff0c;结合丰富的运动控制功能、实时数据采集、处理和本地计算等&#xff0c;具备高度灵活的可编程性和出色的运动控制性能&#xff0c;为运动控制协同工业互联网应用带来巨大市场潜力&#xff0c;同时也使其成为企…

spark shuffle写操作——SortShuffleWriter

写入的简单流程&#xff1a; 1.生成ExternalSorter对象 2.将消息都是插入ExternalSorter对象中 3.获取到mapOutputWriter&#xff0c;将中间产生的临时文件合并到一个临时文件 4.生成最后的data文件和index文件 可以看到写入的重点类是ExternalSorter对象 ExternalSorter 基…

关于振动盘正反料下料逻辑编写

写在前文 借鉴某个程序的逻辑套路写的 1.就是第一个料是正方向&#xff0c;第二个料是反方向。 (* 基础逻辑应该都差不多&#xff0c;这个是一个振动盘&#xff0c;振动盘的末端是一个上下对射的感应器&#xff0c;这个感应器的作用是对射感应到物料的到位信号&#xff0c;末端…

网安加·百家讲坛 | 关昕健:新时代企业数据安全运营思路

作者简介&#xff1a;关昕健&#xff0c;某运营商安全专家&#xff0c;2015年获CISSP认证&#xff0c;长期负责企业安全运营工作&#xff0c;关注国内外数据安全动态与解决方案&#xff0c;持续开展数据安全运营实践。 近年来&#xff0c;随着《数据安全法》的出台和国家数据局…

怎么将视频翻译免费?这篇文章告诉你5个视频翻译的方法

在探索不同文化的经典影视剧时&#xff0c;我们常常被那些精彩绝伦的台词深深吸引。 然而&#xff0c;难以理解的外语符号让我们难以完全领略其魅力。不过&#xff0c;如果你认识免费视频翻译软件的话&#xff0c;那将这些经典台词从陌生的外语符号变成直观的母语表达&#xf…

Git注释规范

主打一个有用 代码的提交规范参考如下&#xff1a; init:初始化项目feat:新功能&#xff08;feature&#xff09;fix:修补bugdocs:文档&#xff08;documentation&#xff09;style:格式&#xff08;不影响代码运行的变动&#xff09;refactor:重构&#xff08;即不是新增功能…

【双出版加持!录用率高!见刊、检索更稳定!】第六届结构抗震与土木工程研究国际学术会议 (ICSSCER 2024,8月16-18)

随着社会的发展&#xff0c;城市规模的不断扩大&#xff0c;建筑形态也趋于多样化和复杂化&#xff0c;建筑结构形式逐渐由规则简单向高层、大跨甚至特殊复杂的方向发展。而房屋建筑是人们正常生活和生产活动的基本场所&#xff0c;房屋建筑结构的安全必须得到充分保障。但是&a…

提升曝光与转化率:速卖通、敦煌网店铺运营结合自养号测评

全球速卖通&#xff08;AliExpress&#xff09;是中国最大的跨境出口B2C平台之一&#xff0c;面向海外买家客户&#xff0c;是全球第三大英文在线购物网站。速卖通是阿里巴巴集团旗下电商业务之一&#xff0c;致力于服务全球中小创业者出海&#xff0c;让天下没有难做的跨境生意…