部署到不同环境的应用会使用到各自的配置,如 Dev, QA, Stg, Prod 有自己的数据库等资源。Spring Boot 可采用 Profile 对应不同的环境,不同 Profile 选择自己的配置文件 application-${profile}.properties
。本人还是偏爱在同一个文件中分组配置,容易查错与编辑,类如在 application.properties 文件中以下面的方式
db.host=aaa
%dev.db.host=bbb
%prod.db.host=ccc
那么在 Python 的项目中应该如何针对不同环境进行配置呢?大概有以下几种
- 不同环境的 Config 类
- YAML 文件
- TOML 文件
- JSON 文件
- INI 文件
- dotenv(.env) 文件
第一种方式是本人推荐的,其他的方式只是在不同格式的配置文件中,按环境组织不同的配置值,其他方式的不同配置读入内存中基本是体现为字典变量。在 Python 配置中要支持像配置的 placeholder(像 ${host} 还需自己实现。 阅读全文 >>