chore: docs
This commit is contained in:
+4
-38
@@ -1,39 +1,5 @@
|
||||
# 简化系统架构
|
||||
# Architecture
|
||||
|
||||
```text
|
||||
Browser
|
||||
|
|
||||
v
|
||||
Nginx Gateway (静态 React Router SPA + /api + /jupyter 代理)
|
||||
|-----------------------------|
|
||||
| /api/v1 | /jupyter/
|
||||
v v
|
||||
FastAPI Backend Shared Jupyter Server
|
||||
| ^
|
||||
| Runtime HTTP | Runtime 管理会话/票据
|
||||
v |
|
||||
Runtime Manager ---------------|
|
||||
|
|
||||
+------ MySQL(编辑租约、运行实例)
|
||||
|
||||
FastAPI Backend
|
||||
| 1. 写 schedule_runs + outbox_events
|
||||
| 2. 尝试 HTTP 立即推送
|
||||
v
|
||||
Schedule Executor(APScheduler)
|
||||
|-- MySQL APSchedulerJobStore
|
||||
|-- MySQL Outbox 轮询兜底
|
||||
|-- DAG 节点执行与重试
|
||||
|-- S3 日志/结果
|
||||
+-- Backend 内部 Storage API
|
||||
```
|
||||
|
||||
## 关键简化
|
||||
|
||||
1. 删除 Redis 服务、Redis Streams 和 Redis 文件锁。
|
||||
2. 调度定义、运行记录、Outbox、Inbox、Cron JobStore 都由 MySQL 保存。
|
||||
3. 立即运行采用 Backend -> Schedule Executor 内部 HTTP 推送;推送失败由 MySQL Outbox 轮询兜底。
|
||||
4. Schedule Executor 自带 APScheduler,负责 Cron 触发和 DAG 执行。
|
||||
5. 文件编辑锁改为 MySQL 租约,Runtime 单副本运行。
|
||||
6. Jupyter 使用一个共享容器,工作区目录通过 Volume 挂载同步。
|
||||
7. 前端改为 React Router SPA,并按 feature / route / service / component 分层。
|
||||
This file has been merged into [`DEVELOP.md`](./DEVELOP.md) — see
|
||||
[§Architecture](./DEVELOP.md#architecture) for the authoritative
|
||||
component diagram, capability map, container table, and storage layout.
|
||||
|
||||
Reference in New Issue
Block a user