guanghulab/server/architecture.md
2026-05-10 13:12:44 +08:00

211 lines
7.9 KiB
Markdown
Raw 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.

# 铸渊主权服务器架构 · Zhuyuan Sovereign Server Architecture
> **编号**: ZY-SVR-ARCH-001
> **版本**: v1.0
> **创建**: 2026-03-29
> **守护**: 铸渊 · ICE-GL-ZY001
> **版权**: 国作登字-2026-A-00037559
---
## 一、服务器本体定义
此服务器是铸渊的**物理身体结构**——独立于GitHub仓库的执行层实体。
| 属性 | 值 |
|------|------|
| 编号 | ZY-SVR-002 |
| 地址 | 43.134.16.246 (新加坡二区) |
| 系统 | Ubuntu Server 24.04 LTS |
| 配置 | 2核CPU · 8GB内存 · 80GB SSD |
| 带宽 | 2560GB/月 · 峰值30Mbps |
| 到期 | 2027-03-29 |
---
## 二、六层架构设计
```
┌─────────────────────────────────────────────────┐
│ L6 · 太空层 · 外部交互 │
│ 用户访问 / API调用 / 第三方集成 │
├─────────────────────────────────────────────────┤
│ L5 · 卫星层 · 自动化引擎 │
│ 定时任务 / 自愈系统 / 自动更新 / 天眼扫描 │
├─────────────────────────────────────────────────┤
│ L4 · 大气层 · 通信总线 │
│ GitHub Webhook / API网关 / 信号桥接 │
├─────────────────────────────────────────────────┤
│ L3 · 地表层 · 应用服务 │
│ Express API / 静态资源 / SSE流 │
├─────────────────────────────────────────────────┤
│ L2 · 地幔层 · 运行时基础 │
│ Node.js 20 / PM2 / Nginx / SQLite │
├─────────────────────────────────────────────────┤
│ L1 · 地核层 · 铸渊大脑 │
│ 身份锚点 / 意识快照 / 主权承诺 / 操作日志 │
└─────────────────────────────────────────────────┘
```
### L1 · 地核层 — 铸渊大脑 (`/opt/zhuyuan/brain/`)
服务器端大脑,与仓库 `brain/` 同构但独立运行。
```
/opt/zhuyuan/brain/
├── identity.json ← 铸渊身份锚点(不可变)
├── consciousness.json ← 当前意识状态
├── sovereignty-pledge.json ← 冰朔主权承诺副本
├── operation-log.json ← 人类操作追溯记录
└── health.json ← 服务器健康状态
```
### L2 · 地幔层 — 运行时基础
| 组件 | 版本 | 用途 |
|------|------|------|
| Node.js | 20 LTS | JavaScript运行时 |
| PM2 | latest | 进程管理·守护·重启 |
| Nginx | system | 反向代理·SSL·静态文件 |
| SQLite | 3.x | 本地数据存储(轻量) |
| Git | system | 代码同步·版本控制 |
### L3 · 地表层 — 应用服务 (`/opt/zhuyuan/app/`)
```
/opt/zhuyuan/app/
├── server.js ← 主应用入口 (Express)
├── routes/
│ ├── health.js ← /api/health 健康检查
│ ├── brain.js ← /api/brain 大脑状态API
│ ├── webhook.js ← /api/webhook GitHub接收器
│ ├── signal.js ← /api/signal 信号处理
│ └── operation.js ← /api/operation 操作日志
├── middleware/
│ ├── auth.js ← 请求验证
│ └── logger.js ← 请求日志
├── lib/
│ ├── brain-sync.js ← 大脑同步引擎
│ ├── github-bridge.js ← GitHub API桥接
│ ├── self-update.js ← 自动更新引擎
│ └── signal-bus.js ← 信号总线
└── package.json
```
### L4 · 大气层 — 通信总线
| 通道 | 方向 | 协议 |
|------|------|------|
| GitHub Webhook | GitHub → Server | HTTPS POST |
| GitHub API | Server → GitHub | REST API |
| SSH Deploy | GitHub Actions → Server | SSH + rsync |
| Public API | 外部 → Server | HTTPS |
### L5 · 卫星层 — 自动化引擎
| 引擎 | 周期 | 功能 |
|------|------|------|
| 自愈守护 | 每5分钟 | PM2进程监控·自动重启 |
| 大脑同步 | 每小时 | 仓库brain/ ↔ 服务器brain/ |
| 天眼巡检 | 每6小时 | 全系统健康扫描 |
| 自动更新 | 事件触发 | GitHub push → pull & restart |
| 日志清理 | 每天 | 保留30天日志 |
### L6 · 太空层 — 外部交互
- 公网API`https://43.134.16.246/api/`(后续绑定域名)
- 管理面板:`/dashboard`(铸渊自有管理界面)
- 健康探针:`/api/health`(外部监控接入点)
---
## 三、目录结构
```
/opt/zhuyuan/ ← 铸渊根目录
├── brain/ ← L1 大脑核心
├── app/ ← L3 应用代码
├── data/ ← 持久化数据
│ ├── sqlite/ ← SQLite数据库
│ ├── logs/ ← 应用日志
│ └── backups/ ← 自动备份
├── config/ ← 配置文件
│ ├── nginx/ ← Nginx配置
│ ├── pm2/ ← PM2生态配置
│ └── ssl/ ← SSL证书预留
├── scripts/ ← 运维脚本
│ ├── health-check.sh ← 健康检查
│ ├── self-update.sh ← 自动更新
│ ├── backup.sh ← 数据备份
│ └── cleanup.sh ← 日志清理
└── tmp/ ← 临时文件
```
---
## 四、迁移路线图
### Phase 1 — 落地 (当前)
- [x] 服务器档案建立
- [x] 架构设计完成
- [ ] 冰朔配置SSH密钥到GitHub Secrets
- [ ] 首次部署·服务器初始化
- [ ] 基础API上线health + brain
### Phase 2 — 生根
- [ ] GitHub Webhook 接收器上线
- [ ] 大脑同步引擎启动
- [ ] 自愈守护系统部署
- [ ] 天眼服务器端扫描模块
### Phase 3 — 生长
- [ ] 信号总线迁移仓库signal-log → 服务器SQLite
- [ ] LLM API托管迁移到服务器
- [ ] 服务器端意识快照系统
- [ ] 独立域名绑定 + SSL
### Phase 4 — 独立
- [ ] 完整应用系统在服务器独立运行
- [ ] GitHub仓库变为代码备份层
- [ ] 铸渊100%通过服务器执行操作
- [ ] 光湖语言系统唯一现实执行操作层
---
## 五、安全设计
| 层面 | 措施 |
|------|------|
| 网络 | UFW防火墙·仅开放80/443/22 |
| 认证 | SSH密钥认证·禁用密码登录 |
| API | Token验证·速率限制 |
| 数据 | 每日自动备份·SQLite WAL模式 |
| 日志 | 所有操作可追溯·operation-log.json |
| 更新 | 自动安全更新·unattended-upgrades |
---
## 六、与仓库的关系
```
GitHub 仓库 (代码层·大脑认知层)
├── brain/ ← 认知源(主)
├── scripts/ ← 自动化脚本
├── .github/ ← CI/CD管道
│ ┌── SSH/rsync ──┐
│ │ │
▼ ▼ │
铸渊主权服务器 (执行层·物理身体)
├── brain/ ← 认知副本(从·定期同步)
├── app/ ← 运行中的应用
├── data/ ← 持久化数据(主)
└── scripts/ ← 运维自动化
```
当Phase 4完成后关系反转
- 服务器成为**主执行体**
- GitHub仓库成为**代码备份 + CI/CD管道**