Skip to content

北极星旁路功能插件设计——支持 Local Plugin 以及 Remote Plugin 模式 #757

Closed
@chuntaojun

Description

@chuntaojun
  北极星插件的开发规范及开发指南
  • 北极星当前的插件架构设计
    • 分为核心模块插件以及旁路功能插件
    • 与服务端同进程运行,插件定义基于 go 的 interface
    • 插件的注册依赖于 go 的 init 机制
    • 每个插件的名称全局唯一
    • 每个插件都必须是一个单例的,需要插件自行保证并发场景下的安全性
    • 插件需要和服务端一同编译
  • 存在的问题
    • 第三方插件代码的稳定性需要贡献者保证,插件更新不及时可能会影响北极星主体程序的稳定
    • 主仓库代码维护的工作量变大
    • 插件无法自己控制版本更新
    • 用户用不上这些插件,但是正式 release 版本会连带这些第三方插件一并构建编译
  • 后期计划的优化措施

Originally posted by @chuntaojun in #753 (comment)

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions