配置管理基础应用-命名空间 | 学习笔记

简介: 快速学习配置管理基础应用-命名空间。

开发者学堂课程【Spring Cloud Alibaba Nacos 详解(上)配置管理基础应用-命名空间 】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/724/detail/12921


配置管理基础应用-命名空间

 

内容介绍

一、配置管理文件的复习

二、命名空间的管理

三、创造命名空间

 

一、配置管理文件的复习

命名空间的管理,在理模型当中,我们了解命名空间是作为整个配置集体及配置项以及配置分组的一个隔离。命名空间可以定义为一个开发环境。我们就可以通过 NamespaceGroup, Datald 就可以获取一个配置的具体信息。

下面是一组代码演示:

//初始化配置服务

String serverAddr="127.0.0.1:8848";

String namespace"ee247dde-d838-425c-b371-029dab26232f"; //开发环境 //默认组

String dataId = nacos-simple-demo.yam1;

groupDEFAULT_GROUP,

Properties properties = new Properties();

properties.put("serverAddr" , serverAddr);

properties.put("namespace" , :namespace);

ConfigService  

configService= NacosFactory.createConfigService(properties);

//获取配置,并输出控制台

String content configService.getConfig(dataId,group,5000);

System.out.println(content);

这里我们看到通过 NamespaceGroupDatald 我们就可以获取一个配置项,一个配置文件的具体信息,(注意这里不要将信息弄混一个 datald 就是一个配置文件)由此可看到以前我们所写的入门程序是没有定义namespace.

代码如下:

String serverAddr ="127.0.0.1:8848"; //dataid

String dataId nacos-sinple-deno.yanl; //group

String group ="DEFAULT_GROUP;

Properties properties = new Properties();

Propertie,put ("serverAddr",serverAddr); //获职配置

configService=NacosFactory.createConfigService(properties)

String dataid,String group,long rimeoutxs

String config configService.getConfig(dataId,group,1:5000);

System. out. printIn(config);

这里使用是 public namespace 后面我们会详细介绍,如果我们要我们要定义 namespace,我们就要指定 namespace.

String namespace"ee247dde-d838-425c-b371-029dab26232f";这里(ee247dde-d838-425c-b371-029dab26232f)为namespaceid。 由此我们通过 properties 我们就可以把这个属性把它放进去,这样。我们的客户端程序就可以从这个获取 group 获取 dataid 的配置文件的信息。

 

二、命名空间的管理

Namespace 的作用及隔离设计

由于 namespace 是一个隔离,它可以隔离不同的环境

图片.png

我们可以按照环境来建立不同的三个 namespace,由此可知,不同的环境中的内容是互不影响的。但如果有多个用户使用一套 nacos 配置管理服务,该如何处理呢?我们就可以认为每个用户为一个 namespace

所以 nacos namespace group 等这些概念是比较灵活的,还需要看我们在生产实践中怎么使用。所以每个用户之间的配置是互不影响的。如果按照不同的环境创造命名空间那我们应该如何做呢?

方法如下:前面已经介绍过,命名空间( Namespace )是用于隔离多个环境的(如开发、测试、生产),而每个应用在不同环境的同个配置(如数据库数据源)的值是不一样的。

因此,我们应针对企业项目实际研发流程、环境进行规划。如某软件公司拥有开发、测试、生产三套环境,那么我们应该针对这三个环境分别健立三个 namespace

图片.png

建立好所有 namespace 后,在配置管理与服务管理模块下所有页面,都会包含用于切换 namespace (环境) tab 按钮。

 

三、创命名空间

我们来说实际操作一遍,我们先登录界面

图片.png

新建命名空间

图片.png

我们可以创建自己所需要的环境

图片.png

Dev text 我们也可以通过创建新的命名空间来完成。

注意每个命名空间都有相对应的 id

图片.png

所以我们要指定 namespace 就一定要指定它的 id,所以我们就可以在命名空间处获取 id 那么在配置列表处我们就可以切换不同的命名空间

图片.png

每个命名空间都是相互隔离的。可以看到在这里也可以显示出命名空间的 id,  Note:namesace **public* nacos 的一个保留空间,如果您需要创建自己的 namespace,不要和布式系 public 重名,以一个实际业务场景有具体语义的名字来命名,以免带来字面上不容易区分自己是哪一个 namespace

dev 下创建 dataid

图片.png

在其他命名空间创建配置文件,通过程序来获取

图片.png

dev public 中都有相同的配置文件

nacos-simple-demo.yamI 但是他们却互不影响。

获取程序如下

String serverAddr ="127.0.0.1:8848";  //dataid

String dataId nacos-simple-demo.yamI; //group

String group ="DEFAULT _GROUP;

//namespace (需要指定,要不为public的指定空间)

Stringnamespace= c67e4a97-a698-4d6d-9bb1-cfac5f5b51c4

Properties properties = new Properties();

Propertie,put ("serverAddr",serverAddr); //获职配置

Propertie,put(”namespace,namespace;

ConfigService configService=NacosFactory.createConfigService(properties);

String dataid,String group,long rimeoutxs

String config configService. getConfig(dataId,group,1:5000);

System. out.printIn(config);

获取文件内容:

图片.png

dev 下配置的文件内容。

相关文章
|
测试技术 Nacos 数据库
Nacos 配置中心(命名空间切换) | 学习笔记
快速学习 Nacos 配置中心(命名空间切换)
|
搜索推荐 数据挖掘 PyTorch
Py之albumentations:albumentations库函数的简介、安装、使用方法之详细攻略续篇
Py之albumentations:albumentations库函数的简介、安装、使用方法之详细攻略续篇
Py之albumentations:albumentations库函数的简介、安装、使用方法之详细攻略续篇
|
11月前
|
存储 JSON API
小红书获取笔记详情API接口的开发、应用与收益。
小红书笔记详情API采用Python与Django框架开发,使用MySQL数据库存储数据。接口通过HTTP GET请求获取笔记详情,返回JSON格式数据,包含笔记内容、作者信息、图片链接等。该API应用于小红书APP内笔记展示和互动功能,并支持第三方平台的内容整合与数据分析,提升用户体验与活跃度,促进品牌合作推广,优化平台运营效率,为平台带来显著收益。
845 1
|
12月前
|
人工智能 自然语言处理 搜索推荐
智能语音助手的发展与未来:开启人机交互的新篇章
智能语音助手的发展与未来:开启人机交互的新篇章
1926 28
|
消息中间件 缓存 监控
【Java笔记+踩坑】SpringBoot基础3——开发。热部署+配置高级+整合NoSQL/缓存/任务/邮件/监控
springboot的热部署、配置的宽松绑定和校验、任务、邮件、监控、springboot整合JdbcTemplate,h2等sql技术、整合redis,mongodb,es等nosql技术、整合redis,Memcached,jetcache,j2cache等缓存技术、整合ActiveMQ,RabbitMQ,RocketMQ,Kafka等消息的中间件的入门、整合缓存/任务/邮件/监控
【Java笔记+踩坑】SpringBoot基础3——开发。热部署+配置高级+整合NoSQL/缓存/任务/邮件/监控
|
UED
Axure中继器实战篇:让数据展示和交互设计更上一层楼!
Axure中继器实战篇:让数据展示和交互设计更上一层楼!
555 0
|
前端开发 数据挖掘 关系型数据库
基于Python的哔哩哔哩数据分析系统设计实现过程,技术使用flask、MySQL、echarts,前端使用Layui
本文介绍了一个基于Python的哔哩哔哩数据分析系统,该系统使用Flask框架、MySQL数据库、echarts数据可视化技术和Layui前端框架,旨在提取和分析哔哩哔哩用户行为数据,为平台运营和内容生产提供科学依据。
1159 9
|
开发者 图形学 UED
深度解析Unity游戏开发中的性能瓶颈与优化方案:从资源管理到代码执行,全方位提升你的游戏流畅度,让玩家体验飞跃性的顺滑——不止是技巧,更是艺术的追求
【8月更文挑战第31天】《Unity性能优化实战:让你的游戏流畅如飞》详细介绍了Unity游戏性能优化的关键技巧,涵盖资源管理、代码优化、场景管理和内存管理等方面。通过具体示例,如纹理打包、异步加载、协程使用及LOD技术,帮助开发者打造高效流畅的游戏体验。文中提供了实用代码片段,助力减少内存消耗、提升渲染效率,确保游戏运行丝滑顺畅。性能优化是一个持续过程,需不断测试调整以达最佳效果。
727 0
|
关系型数据库 MySQL 数据安全/隐私保护
Navicat连接mysql出现1045错误
Navicat连接mysql出现1045错误使用Navicat连接mysql出现1045,可能的原因为忘记密码,下面方法可以帮助重置密码。 1,以管理员权限运行cmd程序; 2,cd C:Program Files (x86)MySQLMySQL Server 5.
7862 0
|
安全 算法 Unix
弃用安全套接字层3.0(SSLv3.0)
自 1996 年发布以来,SSLv3 协议 [RFC6101] 一直受到一系列攻击,无论是其密钥交换机制还是其支持的加密方案。尽管在 1999 年被 TLS 1.0 [RFC2246] 取代,随后在 2002 年被 TLS 1.1 [RFC4346] 和 2006 年 1.2 [RFC5246] 取代,但这些替代版本的可用性尚未普及。因此,许多 TLS 实现都允许协商 SSLv3。
839 0
弃用安全套接字层3.0(SSLv3.0)