Files
ai_wht_wechat/backend/CONFIG_GUIDE.md
2026-01-06 19:36:42 +08:00

113 lines
2.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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分钟执行一次