Nacos服务配置数据模型涉及到三个概念
- 命名空间(java package: com.bjpowernode.service / controller)
用于配置隔离,不同命名空间下,可以存在相同的Group或Data ID配置,Namespace的常用场景之一是不同环境的配置进行区分隔离,例如开发环境、测试环境和生产环境的资源(如配置、服务)隔离等;
- Group
Nacos中的一组配置集合,是组织配置的维度之一,通过一个有意义的字符串(如 Buy 或 Trade)对一组配置集合进行分组,从而区分Data ID相同的配置集合,当在 Nacos 上创建一个配置时,如果未填写配置分组的名称,则配置分组的名称默认采用 DEFAULT_GROUP,配置分组的常见场景:不同的应用或组件使用了相同的配置类型,如 database_url配置和MQ_topic配置;
- Data Id
Nacos中的某个配置集合的ID,配置集合ID是组织划分配置的维度之一,Data ID通常用于组织划分系统的配置集合,一个系统或者应用可以包含多个配置集合,每个配置集都可以被一个有意义的名称标识;
如图:
配置方案:
第一种方案:
默认命名空间(public) + 默认Group分组(DEFAULT_GROUP) + 自定义Data Id(没有默认值);
默认命名空间:public
默认Group:DEFAULT_GROUP
自定义Data Id:
${spring.application.name}-${profile}.${file-extension:properties}
比如:nacos-config-dev.yaml
第二种方案:
默认命名空间 + 自定义Group分组 + 自定义的Data Id(没有默认值);
默认命名空间:public
默认Group:MY_GROUP
自定义Data Id:
${spring.application.name}-${profile}.${file-extension:properties}
比如:nacos-config-dev.yaml
第三种方案:
自定义命名空间 + 自定义Group分组 + 自定义的Data Id(没有默认值);
默认命名空间:public
默认Group:MY_GROUP
自定义Data Id:
${spring.application.name}-${profile}.${file-extension:properties}
比如:nacos-config-dev.yaml