a25ec7630f1356a81fa675aaf600f47536537056
chongming Core
基于 FastAPI 的微服务网关脚手架,集成 Zenoh、Worker 框架、动态路由、模块银行何对象存储。
核心特性
- FastAPI + Uvicorn:高性能异步 Web 框架
- Zenoh 服务发现:基于 Zenoh 的 Worker 注册与 RPC 调用
- 动态路由生成:根据
config/workers下的 TOML 配置自动生成 API 端点 - Worker 框架:使用
@rpc_method装饰器定义 RPC 方法,支持自动生成 Pydantic 模型 - 模块银行(module-bank):将 Python 模块加密打包为 SQLite 数据库,支持动态导入
- 对象存储代理:集成
nanio(S3 兼容)文件上传/下载 - 构建打包:支持 PyInstaller / Nuitka 一键打包为独立可执行文件
项目结构
.
├── config/ # 配置文件目录
│ ├── workers/ # Worker 路由配置
│ └── zenoh_config.json5 # Zenoh 配置
├── public/ # 公共启动文件(main.py, server.py)
├── src/
│ ├── chongming/ # 核心应用
│ │ ├── app/ # FastAPI 应用、路由、核心组件
│ │ └── scripts/ # 工具脚本(build, gen_models)
│ └── plugins/ # Worker 插件源码
├── utils/ # 子工具包(worker, request, jwt)
├── build_nuitka/ # Nuitka 打包配置示例
└── pyproject.toml # 项目依赖与工具配置
快速开始
- 安装依赖 (推荐使用 uv)
uv sync
- 启动服务(开发模式)
uv run serve
- 访问 API 文档:
http://localhost:8000/docs
构建
- PyInstaller:
uv run build pyinstaller - Nuitka:
uv run build nuitka
更多文档
- Worker 开发指南(待补充)
- 配置说明