第八十六章
WSaiOS Deployment Architecture
部署架构
86.1 工程目标
本章定义 WSaiOS 的部署模型,确保同一套 Core 能够在不同运行环境中保持一致的行为。
部署架构遵循三个原则:
- 同一代码(Same Code)
- 不同部署(Different Deployment)
- 统一接口(Unified Interface)
即:
一套 WSaiOS Core
↓
本地
↓
服务器
↓
Docker
↓
云平台
↓
行为保持一致
部署方式改变,不改变 Kernel、Workflow、Service、Capability 的设计。
86.2 部署层次
WSaiOS 部署采用五层模型:
Application
│
WSaiOS Core
│
Runtime
│
Operating System
│
Hardware
WSaiOS 不直接依赖具体硬件,而依赖 Runtime 和操作系统提供的资源。
86.3 Local Deployment(本地部署)
第一阶段推荐:
单机运行。
例如:
Windows
Python
SQLite
Local Plugin
Local Workflow
特点:
- 无网络依赖;
- 无服务器依赖;
- 所有数据本地保存;
- 便于开发和调试。
这是 WSaiOS-Core v1.0 的推荐部署方式。
86.4 Standalone Deployment(独立部署)
适用于:
一台服务器运行多个业务。
例如:
Ubuntu
Python
SQLite / PostgreSQL
多个 Plugin
多个 Workflow
特点:
- 单进程或多进程;
- 本地数据库;
- 提供 HTTP API;
- 支持多个客户端访问。
86.5 LAN Deployment(局域网部署)
多个节点位于同一局域网。
部署模型:
Client A
│
Client B
│
────────────
│
WSaiOS Server
│
SQLite/PostgreSQL
特点:
- 数据集中;
- Workflow 集中执行;
- Event Bus 可扩展为网络通信。
86.6 Distributed Deployment(分布式部署)
多个 WSaiOS 节点组成集群。
例如:
Node 1
Knowledge
────────────
Node 2
Reasoning
────────────
Node 3
Execution
节点通过统一 API 与 Event Bus 协作,而不是直接访问彼此内部对象。
86.7 Container Deployment(容器部署)
当系统需要快速交付时,可以采用容器。
例如:
WSaiOS Core
↓
Docker Image
↓
Container
要求:
- 配置文件外置;
- 数据目录挂载;
- 插件目录可扩展;
- 日志输出标准化。
容器只是部署方式,不改变 Core 的设计。
86.8 Cloud Deployment(云部署)
云环境中:
Gateway
↓
WSaiOS Service
↓
Workflow
↓
Database
建议:
Core 不感知是否运行在云平台。
所有云能力通过 Runtime 适配。
86.9 配置管理
统一采用:
config/
config.yaml
配置内容包括:
- Runtime;
- Database;
- Plugin;
- Logging;
- Network。
禁止在代码中写死路径或环境参数。
86.10 数据目录
统一目录:
data/
logs/
plugins/
config/
workspace/
所有部署方式保持一致。
例如:
workspace/
output/
cache/
temp/
方便迁移。
86.11 升级策略
升级流程:
Backup
↓
Stop
↓
Replace
↓
Verify
↓
Start
升级失败:
支持:
Rollback
回滚到上一版本。
86.12 部署验证
最小验证:
启动:
python main.py
检查:
- Kernel 是否启动;
- Service 是否注册;
- Workflow 是否可执行;
- Plugin 是否加载;
- 日志是否正常。
不同部署方式使用相同验证脚本。
86.13 部署模型
Cloud
│
Container
│
Distributed
│
LAN
│
Standalone
│
Local
部署能力逐步扩展,而不是一次跨越。
86.14 本章总结
完成:
WSaiOS Deployment Architecture
建立:
- 部署模型
- Local 部署
- Standalone 部署
- LAN 部署
- Distributed 部署
- Container 部署
- Cloud 部署
- 配置管理
- 升级与回滚
- 部署验证