一、Nacos的数据模型
1.1、数据模型
- 对于Nacos配置管理,通过Namespace、Group、Date ID能够定位到一个配置集。
- Nacos数据模型如下所示:
1.2、命名空间(Namespace)
- 可用于进行不同环境的配置隔离。
- 例如:
1)、可以隔离开发环境——测试环境和生产环境,因为它们的配置可能各不相同;
2)、可以隔离不同的用户——不同的开发人员使用同一个nacos管理各自的配置,可通过namespace隔离。不同的命名空间下,可以存在相同名称的配置分组(Group) 或配置集。
1.3、配置分组(Group)
- 配置分组是对配置集进行分组。
- 通过一个有意义的字符串(如 Buy 或 Trade )来表示。
- 不同的配置分组下可以有相同的配置集(Data ID)。
- 当您在 Nacos 上创建一个配置时,如果未填写配置分组的名称,则配置分组的名称默认采用 DEFAULT_GROUP 。
- 配置分组的常见场景——可用于区分不同的项目或应用。
- 例如:
1)、学生管理系统的配置集可以定义一个group为:STUDENT_GROUP。
1.4、配置集(Data ID)
- 在系统中,一个配置文件通常就是一个配置集。
- 一个配置集可以包含了系统的各种配置信息。
- 例如:
1)、 一个配置集可能包含了数据源、线程池、日志级别等配置项。每个配置集都可以定义一个有意义的名称,就是配置集的ID即DataID。
1.5、配置项
- 配置集中包含的一个个配置内容就是配置项。
- 它代表一个具体的可配置的参数与其值域,通常以 key=value 的形式存在。
- 例如:
1)、我们常配置系统的日志输出级别(logLevel=INFO|WARN|ERROR) 就是一个配置项。
1.6、示例
- Nacos抽象定义了Namespace、Group、Data ID的概念,具体这几个概念代表什么,取决于我们把它们看成什么。这里推荐给大家一种用法,如下所示:
- Namespace:代表不同环境,如开发、测试、生产环境。
- Group:代表某项目,如XX医疗项目、XX电商项目。
- DataId:每个项目下往往有若干个工程,每个配置集(DataId)是一个工程的主配置文件。