# Python服务配置说明 ## 配置文件结构 Python服务现在使用与Go服务相同的配置文件结构: ``` backend/ ├── config.dev.yaml # 开发环境配置 ├── config.prod.yaml # 生产环境配置 ├── config.py # 配置加载模块 ├── .env.example # 环境变量示例 └── .env # 环境变量(需手动创建,Git忽略) ``` ## 环境切换 通过设置 `ENV` 环境变量来切换环境: ### Windows (CMD) ```bash set ENV=dev python main.py ``` ### Windows (PowerShell) ```powershell $env:ENV="dev" python main.py ``` ### Linux/Mac ```bash ENV=dev python main.py ``` 或者在 `.env` 文件中设置: ``` ENV=dev ``` ## 配置优先级 1. **环境变量** - 最高优先级 2. **配置文件** - config.{ENV}.yaml 3. **代码默认值** - 最低优先级 ## 配置项说明 ### 开发环境 (config.dev.yaml) - **数据库**: 本地MySQL (localhost:3306) - **调度器**: 启用,每5秒执行一次(测试用) - **日志级别**: DEBUG ### 生产环境 (config.prod.yaml) - **数据库**: 远程MySQL (8.149.233.36:3306) - **调度器**: 启用,每5分钟执行一次 - **日志级别**: INFO ## 使用示例 ### 1. 开发环境 创建 `.env` 文件: ```bash ENV=dev ``` 启动服务: ```bash python main.py ``` ### 2. 生产环境 创建 `.env` 文件: ```bash ENV=prod ``` 启动服务: ```bash python main.py ``` ### 3. 覆盖配置 如需临时修改某些配置,可在 `.env` 中添加: ```bash ENV=dev DB_HOST=192.168.1.100 SCHEDULER_CRON=0 */10 * * * * ``` ## 与Go服务的配置对应关系 | Python配置 | Go配置 | 说明 | |-----------|--------|------| | config.dev.yaml | config/config.dev.yaml | 开发环境配置 | | config.prod.yaml | config/config.prod.yaml | 生产环境配置 | | ENV环境变量 | ENV环境变量 | 环境切换 | | database.username | database.username | 数据库用户名 | | database.dbname | database.dbname | 数据库名称 | ## 注意事项 1. **密码安全**: 生产环境请修改 `config.prod.yaml` 中的数据库密码 2. **Git忽略**: `.env` 文件已被Git忽略,不会提交到代码库 3. **环境变量**: 环境变量会覆盖配置文件中的同名配置 4. **调度器频率**: 开发环境默认5秒执行一次,生产环境默认5分钟执行一次