不同配置名称(默认,dev,local,prod)的区别

nacos中配置的命名

[服务名]-[spring.active.profile].[后缀名]
  • devSpring Boot 中的 spring.active.profile 的值,也就是 “环境 profile” 的一个常见命名。
  • 它代表 开发环境(development environment)

✅ 举例说明:

Data ID 示例含义说明
cart-service-dev.yaml仅当 Spring Boot 的 spring.profiles.active=dev 时加载
cart-service-local.yaml仅当 profile 是 local 时加载
cart-service.yaml所有 profile 共享(包括 dev、local、prod 等)

✅ 总结一句话:

dev 就是开发环境的 profile 名称,用于区分不同环境下的配置,比如开发(dev)、测试(test)、生产(prod)等。

配置名称的区别

这几个名称的区别,核心在于“生效范围”不同,也就是 Spring Boot 启动时,哪个配置会被加载


✅ 举例对比(以 cart-service 为例)

配置名称(Data ID)生效条件(Spring profiles)用途说明
cart-service.yaml所有环境都生效(默认配置)放通用配置,比如线程池大小、日志格式等
cart-service-dev.yaml仅在 spring.profiles.active=dev 时生效开发环境专用,比如连接本地数据库
cart-service-local.yaml仅在 spring.profiles.active=local 时生效本地启动专用,比如走本地 mock 服务
cart-service-prod.yaml仅在 spring.profiles.active=prod 时生效线上环境专用,比如连接线上数据库、开启熔断

✅ 加载优先级(高 → 低):

cart-service-{profile}.yaml > cart-service.yaml

也就是说:

  • 如果 profile=dev,会 先加载 cart-service.yaml,再用 cart-service-dev.yaml 覆盖同名配置
  • 如果 没有指定 profile,就 只加载 cart-service.yaml

✅ 一句话总结:

名称是否环境相关作用
cart-service.yaml❌ 通用所有环境共享
cart-service-dev.yaml✅ 环境特定仅开发环境生效
cart-service-local.yaml✅ 环境特定仅本地环境生效
cart-service-prod.yaml✅ 环境特定仅生产环境生效

如果你本地启动时加了:

--spring.profiles.active=dev

那就只会加载:

  • cart-service.yaml
  • cart-service-dev.yaml

不会加载 localprod 的配置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值