阿里Nacos-配置-多环境
多环境的配置隔离是配置中心最基础的一个功能之一。不同的环境配置的值不一样,比如数据库的信息,业务的配置等。
Spring Boot 多环境配置
首先我们来回顾下在Spring Boot中用配置文件的方式怎么进行环境的隔离。
默认我们都会创建一个application.properties配置文件,这个文件是不区分环境的,通用。
为了区分环境我们可以为每个环境创建一个配置文件,比如;
- 开发环境
application-dev.properties - 测试环境
application-test.properties
在项目部署的时候可以通过 spring.profiles.active=dev 来激活开发环境的配置,通过 spring.profiles.active=test 来激活测试环境的配置。
Apollo 多环境配置
既然讲到配置中心,那么我会已目前已经比较成熟的Apollo来进行一个对比,把一些相同的或者不同的点都分析出来,这样大家在选型的时候也能有个参考。
Apollo的多环境配置是在搭建的时候需要制定好目前支持多少个环境,每个环境下可以分不同的集群,集群这个是可以动态创建的。
选择不同的环境,进行配置的操作,改动的就是这个环境下的配置。
在客户端接入的时候,通过指定env来获取对应环境下的配置,还有一点就是Apollo中每个环境的配置都是用DB来隔离的,每个环境都有自己的一个ConfigDB。
Nacos 多环境配置
Namespace用于进行租户粒度的配置隔离。不同的命名空间下,可以存在相同的 Group 或 Data ID 的配置。Namespace 的常用场景之一是不同环境的配置的区分隔离,例如开发测试环境和生产环境的资源(如配置、服务)隔离等。
以上是官方对Nacos Namespace的介绍,如果用过Apollo的同学应该知道,在Apollo中的Namespace是配置文件的概念,跟Nacos的概念定义相差太大了。
而Nacos中配置文件的定义则是Data ID,在学任何一个框架的时候,首先要搞懂的就是它本身的一些概念。
在Nacos中要实现多环境的隔离,也就是说我们需要创建多个Namespace。
Nacos的最后一个菜单,名称为:命名空间,点进去我们可以看到下面的列表,可以去创建你想要的空间:
public是默认的,我们创建了一个dev环境,这个时候会生成一条数据,我们需要关注的是命名空间ID,为了防止命名空间名称冲突,在保存后会自动生成一个ID,项目中在指定当前环境的时候需要传空间ID,而不是空间名称。
创建空间后,在配置列表的页面上边我们可以选择不同的空间来进行切换。然后在对应的空间下创建配置。
最后在我们的项目中,我们是以Spring Boot来进行讲解的,就在application.properties中指定当前项目的空间值即可:
nacos.config.namespace=334139e6-d700-4a7b-ae0d-5ae30abd94a8
最好的方式是在部署的时候,通过参数传递,如果你直接写在项目中,那么上线的时候是不是还得修改这个namespace为线上的namespace id。
Apollo在这块是这样设计的,环境可以配置在磁盘中的配置文件中,就相当于一台机器配置一个环境,那么这台机器上的应用就都是这个环境了,环境跟着机器走,不跟项目走。
阿里Nacos-配置-多环境的更多相关文章
- 阿里云配置php环境 ubuntu12.04 32 nginx+php5+mysql
最近几个客户都订购了阿里云服务器,如何配置服务器就比较重要了 比较喜欢ubuntu的系统,这里以12.04 32位来说 服务器配置采用 nginx+php5+mysql 首先是apt-get的更新 a ...
- Nacos集群环境的搭建与配置
Nacos集群环境的搭建与配置 集群搭建 一.环境: 服务器环境:CENTOS-7.4-64位 三台服务器IP:192.168.102.57:8848,192.168.102.59:8848,192. ...
- 阿里云服务器(ECS)从购买到配置NodeJS环境
本人入门级前端,对服务器不熟悉,这是自己摸索的过程,可能会有错误! 1.购买 阿里云服务器有个活动是新用户前六个月可以免费试用,但是每天早上发放一定的名额,但为了方便,我买了18RMB的捆绑套餐,也是 ...
- LNMP笔记:阿里云32位 CentOS 5.4 配置 LNMP环境
最近比较郁闷的是 WordPress大学 服务器故障,由于诸多原因没及时处理,导致10多天无法访问.倡萌也是刚接触服务器环境配置,维护的确力不从心,没办法排查出错误根源,所以只好重置系统盘,重新配置L ...
- 【Nacos】Springboot整合Nacos配置中心(二) 多环境配置
本篇随笔接上一篇文章:Springboot整合Nacos配置中心(一),主要记录Nacos多环境的配置的方法 Nacos多环境的配置 方法一: 1.在项目中的bootstrap.yaml文件中配置激活 ...
- 在阿里云的CentOS环境中安装配置MySQL、JDK、Maven
Welcome to Alibaba Cloud Elastic Compute Service ! [root@izbp19stm1x1k2io1e7r3tz ~]# rpm -Uvh http:/ ...
- Spring Cloud Config、Apollo、Nacos配置中心选型及对比
Spring Cloud Config.Apollo.Nacos配置中心选型及对比 1.Nacos 1.1 Nacos主要提供以下四大功能 2.Spring Cloud Config 3.Apollo ...
- Nacos配置中心交互模型是 push 还是 pull ?你应该这么回答
本文案例收录在 https://github.com/chengxy-nds/Springboot-Notebook 大家好,我是小富- 对于Nacos大家应该都不太陌生,出身阿里名声在外,能做动态服 ...
- nacos配置中心模块详解
本文已收录 https://github.com/lkxiaolou/lkxiaolou 欢迎star. 配置中心 业务上的配置,功能开关,服务治理上对弱依赖的降级,甚至数据库的密码等,都可能用到动态 ...
- CentOS7配置Nodejs环境安装记录
今天购买了阿里云服务器,系统选的是CentOS7,下面记录下在它上面安装Nodejs环境的过程,本次操作是直接连接的阿里云服务器的管理终端. 1.由于是纯净的环境,先通过以下命令安装nodejs编译及 ...
随机推荐
- 一文解读JSON (转)
JSON作为目前Web主流的数据交换格式,是每个IT技术人员都必须要了解的一种数据交换格式.尤其是在Ajax和REST技术的大行其道的当今,JSON无疑成为了数据交换格式的首选! 今天我们一起来学习一 ...
- SpringBoot项目下的JUnit测试
在SpringBoot项目里,要编写单元测试用例,需要依赖4个jar.一个是最基本的JUnit,然后是spring-test和spring-boot-test. <!--test--> & ...
- MySQL数据库~~~~~创建用户和授权、备份和还原
一 MySQL创建用户和授权 1.1 对新用户增删改 1.创建用户: # 指定ip:192.118.1.1的chao用户登录 create user 'chao'@'192.118.1.1' iden ...
- error: [debug/qrc_resource.cpp] Error 1
t在进行debug时,出现这个错误,去资源文件夹,用资源编辑器打开resource.qrc文件,查看是否有标红的资源文件. 如果有红色名称的资源文件,那么就是因为缺少该资源文件,导致的这个错误. 改正 ...
- java学习路线推荐,希望能帮到你
很多小白刚开始学习java时,肯定迷惘过,因为对java基本是啥也不懂的,一直想知道java的具体学习路线,我曾经也看了许许多多的java经验分享的帖子,评论,以及其他各种培训机构所谓的学习路线,特别 ...
- vue-property-decorator和typescript结合构建的class类组件,父组件触发子组件方法的方式
vue-property-decorator和typescript结合构建的class类组件,父组件触发子组件方法的方式 class类组件示例 Father类组件 <template> & ...
- Java,该学什么?
本人大学学的是生物技术专业,毕业后入坑Java. 最近有人问我是如何转行的,需要学一些什么.我在网上看到一篇帖子,觉得写得很全.如果是我来写,可能还写不了这么全的.在此分享给网友. 2019秋招几个月 ...
- 01-linux介绍
一.Linux简介 Linux内核最初只是由芬兰人林纳斯.托瓦兹在大学时出于爱好写出来的,是一套免费使用和自由传播的类Unix操作系统,是基于POSIX和UNIX的多用户.多任务.支持多线程和多CPU ...
- React 从入门到进阶之路(二)
在之前的文章中我们介绍了 React 开发的环境搭建及目录介绍和整理,本篇文章将介绍 React 创建组件.JSX 语法.绑定数据和绑定对象. 之前我们已经将项目运行了起来,我们再来看一下目录结构: ...
- Python爬虫实战教程:爬取网易新闻
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: Amauri PS:如有需要Python学习资料的小伙伴可以加点击 ...