首页/开发/系统分析与架构设计速查/微内核架构(插件化)
架构风格与模式58 条

微内核架构(插件化)

核心系统只承载通用能力与插件契约,可变规则以插件形式扩展;适合规则多变的平台型产品,如工作流、IDE、规则引擎。

核心系统稳定的通用能力:生命周期、注册发现、契约定义
插件独立开发与部署的扩展单元
契约插件接口、版本与兼容策略是设计重心
  • 识别稳定内核:把生命周期、注册发现、通信等通用能力收进核心
  • 定义扩展点:接口、数据格式与版本兼容规则一起明确
  • 插件清单:登记名称、版本、依赖与所需权限
  • 隔离运行:限制插件对内核内部状态的直接访问
  • 演进策略:契约破坏性变更走并行版本或迁移窗口
契约演进做法v1/v2 并行接口配合弃用公告;关键插件在迁移窗口内双跑验证
常见代价内核复杂度上升、插件质量参差,需要准入评审与沙箱机制
典型形态网关过滤器链、规则引擎扩展点、IDE 插件体系
注册机制启动时扫描或按清单文件加载插件;单个插件加载失败要降级处理,不影响内核启动
权限模型插件声明所需能力(文件、网络、配置),内核按最小授权放行
版本检查插件启动时校验依赖的契约版本,不匹配时拒绝加载并给出可读原因
插件生态一旦开放,接口兼容与沙箱隔离会成为长期成本,上线前需明确版本策略。

易错点

  • 插件随意访问核心内部状态,隔离与升级都做不了
  • 插件接口频繁破坏性变更,第三方插件全部失效

数据来源与参考

  • 《Software Architecture Patterns》(Richards,O'Reilly)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌