Architecture and detailed design documents for EdgeFlow, a self-built content delivery network.
All documents are available in both Chinese and English with cross-links at the top of each file.
graph TD
User[User Request] --> Scheduler[cdn-scheduler<br/>DNS / HTTP 302]
Scheduler --> Edge[cdn-edge<br/>Caching Proxy]
Edge --> Origin[Origin Server]
Edge -->|Metrics| Prometheus
Prometheus --> Grafana
Console[cdn-console<br/>React UI] -->|REST API| Control[cdn-control<br/>Gin + gRPC]
Control -->|gRPC Config Push| Edge
Control --> PG[(PostgreSQL)]
Control --> Redis[(Redis)]
Redis -->|Pub/Sub Purge| Edge
Edge -->|Access Logs| CH[(ClickHouse)]
| # | Topic | Chinese | English |
|---|---|---|---|
| 01 | System Architecture | 架构概览 | Architecture Overview |
| 02 | Edge Node | 边缘节点设计 | Edge Node Design |
| 03 | Control Plane | 控制平面设计 | Control Plane Design |
| 04 | Scheduler | 调度系统设计 | Scheduler Design |
| 05 | Development Roadmap | 开发路线图 | Development Roadmap |
| 06 | Feature Roadmap | 功能扩展路线图 | Feature Roadmap |
| 07 | WAF Design | WAF 详细设计 | WAF Design |
| Component | Technology |
|---|---|
| Edge Node / Control Plane / Scheduler | Go |
| Admin Console | React + TypeScript + Ant Design |
| Database | PostgreSQL |
| Cache / Messaging | Redis |
| Log Storage | ClickHouse |
| Monitoring | Prometheus + Grafana |
| Inter-service Communication | gRPC (JSON codec) |
| Deployment | Docker Compose / Kubernetes |
| Repo | Description |
|---|---|
| cdn-edge | Edge node — caching reverse proxy with WAF, compression, HTTP/3 |
| cdn-control | Control plane — REST API, gRPC, PostgreSQL, JWT auth, 2FA |
| cdn-scheduler | Scheduler — DNS + HTTP 302 routing with GeoIP |
| cdn-console | Admin console — React web UI |
| cdn-deploy | Deployment — Docker Compose + Kubernetes manifests |
| cdn-cli | CLI tool — edgeflow command-line client |
| cdn-terraform | Terraform provider (skeleton) |