modify: 插件初始化

This commit is contained in:
2026-08-12 10:18:34 +08:00
parent 58a889dc6b
commit fe95a67e93
3 changed files with 347 additions and 16 deletions
+19 -16
View File
@@ -8,21 +8,22 @@
## 核心特性
| 特性 | 说明 |
| --------------------- | -------------------------------------------------------------- |
| **FastAPI + Uvicorn** | 高性能异步 Web 框架,自动生成 OpenAPI 文档 |
| **Zenoh 服务发现** | 基于 liveliness 的 Worker 注册与 RPC 调用,负载均衡 + 超时重试 |
| **MQTT 集成** | 内嵌 amqtt Broker,MQTT ↔ Worker 双向桥接 |
| **动态路由生成** | 扫描 `config/workers/*.toml` 自动注册 HTTP 路由 |
| **Worker 框架** | `@rpc_method` 装饰器 + 自动参数解析 + Pydantic 模型绑定 |
| **自动化模型生成** | `gen_models` 根据 TOML 配置生成请求/响应模型 |
| **JWT 鉴权** | Rust 实现,路由级 `auth_required` 控制 |
| **Argon2id 密码哈希** | Rust 实现的高性能密码安全方案 |
| **异步 SQLite** | aiosqlite + SQLModel,多进程并发安全 |
| **本地文件存储** | 内置文件上传/下载端点 |
| **流媒体代理** | ffmpeg + MediaMTX RTSP 流转发 |
| **构建打包** | PyInstaller / Nuitka 一键打包为独立可执行文件 |
| **Vue 3 前端** | Element Plus UI、Pinia 状态管理、类型安全的 API 客户端 |
| 特性 | 说明 |
| --------------------- | -------------------------------------------------------------------- |
| **FastAPI + Uvicorn** | 高性能异步 Web 框架,自动生成 OpenAPI 文档 |
| **Zenoh 服务发现** | 基于 liveliness 的 Worker 注册与 RPC 调用,负载均衡 + 超时重试 |
| **MQTT 集成** | 内嵌 amqtt Broker,MQTT ↔ Worker 双向桥接 |
| **动态路由生成** | 扫描 `config/workers/*.toml` 自动注册 HTTP 路由 |
| **Worker 框架** | `@rpc_method` 装饰器 + `Plugin` 基类统一生命周期 + Pydantic 模型绑定 |
| **自动化模型生成** | `gen_models` 根据 TOML 配置生成请求/响应模型 |
| **插件脚手架** | `gen_plugin` 一键生成风格统一的 Worker 插件骨架 |
| **JWT 鉴权** | Rust 实现,路由级 `auth_required` 控制 |
| **Argon2id 密码哈希** | Rust 实现的高性能密码安全方案 |
| **异步 SQLite** | aiosqlite + SQLModel,多进程并发安全 |
| **本地文件存储** | 内置文件上传/下载端点 |
| **流媒体代理** | ffmpeg + MediaMTX RTSP 流转发 |
| **构建打包** | PyInstaller / Nuitka 一键打包为独立可执行文件 |
| **Vue 3 前端** | Element Plus UI、Pinia 状态管理、类型安全的 API 客户端 |
---
@@ -45,7 +46,7 @@ chongming-zenoh/
│ │ ├── app/
│ │ │ ├── core/ # WorkerManager, RouteGenerator, MQTTBridge, auth
│ │ │ └── routes/ # 内置路由(文件上传等)
│ │ └── scripts/ # build, gen_models
│ │ └── scripts/ # build, gen_models, gen_plugin
│ ├── chongming-web/ # Vue 3 前端
│ │ └── src/
│ │ ├── api/generated/ # 自动生成 API 客户端
@@ -264,6 +265,7 @@ python publisher.py example add '{"a":3,"b":5}' # 调用 add
```bash
uv run serve # 启动开发服务
uv run gen_plugin <name> # 生成统一风格插件骨架
uv run python -m chongming.scripts.gen_models # 生成 Pydantic 模型
uv run python -m chongming.scripts.build # 构建打包(PyInstaller/Nuitka)
uv pip install -e utils/<name> # 安装/更新工具包
@@ -326,6 +328,7 @@ uv run python -m chongming.scripts.build nuitka
```bash
uv run serve # 启动开发服务器
uv run gen_plugin <name> # 生成统一风格插件骨架
uv run python -m chongming.scripts.gen_models # 生成 Pydantic 模型
uv run build pyinstaller # PyInstaller 打包
uv run build nuitka # Nuitka 打包