🧩 什么是 FutureOSS?
FutureOSS 是一个一切皆为插件的开发者工具运行时框架。框架本身是空壳,所有功能均以插件形式加载。
项目定位
协议、中间件、通知渠道……所有功能均以插件形式加载。内置熔断降级、依赖自动解析、事件驱动等企业级稳定性机制。
核心特性
- 一切皆插件 — 框架本身不提供任何业务功能,所有能力通过插件扩展
- 热插拔 — 插件运行时加载与卸载,改完即生效,零编译
- 依赖自动解析 — 拓扑排序 (Kahn 算法) + 循环依赖检测
- 熔断与降级 — 自动熔断,支持 closed/open/half-open 状态切换
- 包管理系统 — 一键安装/卸载/更新插件,支持
@{作者}/插件名格式 - 事件驱动 — 发布/订阅 + 通配符匹配 + RPC 桥接
- 统一存储 — plugin-storage 为每个插件提供隔离的文件读写入口
关键原则
类型共享
框架在 oss/plugin/types.py 中定义所有数据类型和接口,插件通过 from oss.plugin.types import Plugin 直接使用。插件不应重复定义 Logger、EventBus 等类型。
配置驱动
所有插件通过 config.json 配置,不修改源码。配置文件使用相对路径,相对于 config.json 所在目录。
插件安装格式
格式为 @{作者名称}/插件名称,命令:oss pkg install @{Falck}/http-server