feat: 微服务架构拆分和前后端优化
后端: - 拆分出 agent_service, runtime_service, trading_service, news_service - Gateway 模块化拆分 (gateway_*.py) - 添加 domains/ 领域层 - 新增 control_client, runtime_client - 更新 start-dev.sh 支持 split 服务模式 前端: - 完善 API 服务层 (newsApi, tradingApi) - 更新 vite.config.js - Explain 组件优化 测试: - 添加多个服务 app 测试 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
48
README_zh.md
48
README_zh.md
@@ -117,6 +117,54 @@ evotraders frontend # 默认连接 8765 端口, 你可以修改 .
|
||||
|
||||
访问 `http://localhost:5173/` 查看交易大厅,选择日期并点击 Run/Replay 观察决策过程。
|
||||
|
||||
### 迁移期服务边界说明
|
||||
|
||||
当前仓库正处于从模块化单体向独立服务迁移的阶段,当前默认开发路径已经切到独立 app surface:
|
||||
|
||||
- `backend.apps.agent_service`
|
||||
- `backend.apps.runtime_service`
|
||||
- `backend.apps.trading_service`
|
||||
- `backend.apps.news_service`
|
||||
|
||||
当前本地开发默认推荐直接运行拆分后的服务:
|
||||
|
||||
```bash
|
||||
./start-dev.sh split
|
||||
|
||||
# 或分别手动启动
|
||||
python -m uvicorn backend.apps.agent_service:app --port 8000 --reload
|
||||
python -m uvicorn backend.apps.runtime_service:app --port 8003 --reload
|
||||
python -m uvicorn backend.apps.trading_service:app --port 8001 --reload
|
||||
python -m uvicorn backend.apps.news_service:app --port 8002 --reload
|
||||
```
|
||||
|
||||
迁移期关键环境变量:
|
||||
|
||||
```bash
|
||||
# 后端 Gateway 优先走独立服务读取
|
||||
NEWS_SERVICE_URL=http://localhost:8002
|
||||
TRADING_SERVICE_URL=http://localhost:8001
|
||||
|
||||
# 前端浏览器直连控制面 / 运行时面
|
||||
VITE_CONTROL_API_BASE_URL=http://localhost:8000/api
|
||||
VITE_RUNTIME_API_BASE_URL=http://localhost:8003/api/runtime
|
||||
|
||||
# 前端浏览器优先直连独立服务
|
||||
VITE_NEWS_SERVICE_URL=http://localhost:8002
|
||||
VITE_TRADING_SERVICE_URL=http://localhost:8001
|
||||
```
|
||||
|
||||
目前前端已支持直连 `news-service` 的 explain 只读路径包括:
|
||||
|
||||
- runtime panel / gateway port 查询已可独立指向 `runtime-service`
|
||||
- story
|
||||
- similar days
|
||||
- range explain
|
||||
- news for date
|
||||
- news categories
|
||||
|
||||
如果没有配置这些变量,系统会继续走当前保留的本地回退逻辑。
|
||||
|
||||
---
|
||||
|
||||
## 系统架构
|
||||
|
||||
Reference in New Issue
Block a user