EMQX5.0 插件是否支持热加载?

错误报告

环境

  • EMQX 版本:5.0.17
  • 操作系统版本:win docker

重现此问题的步骤


同一插件不同版本,输出日志不同。
1、新增插件5.0.2并启用,输出日志5.0.2
2、新增插件5.0.3(直接为启用状态),输出日志5.0.2
3、停止或卸载插件5.0.2,插件5.0.3也停止了

预期行为

1、输出5.0.2
2、输出5.0.3
3、5.0.3状态为运行中

实际行为

1、输出5.0.2
2、输出5.0.2
3、5.0.3状态为已停止

问题

EMQX5.0 插件是否支持热加载?

若按照上述步骤,插件的版本更新会导致断档,如何去避免?

目前 5.0 插件如果你想升级版本的话,只能先卸载并删除老的,然后再导入和加载新的。

那有什么版本会计划支持这个能力呢?

目前还没有这个规划,我会先反馈给产品团队。

另外,事实上这一点会比较难实现,只是简化更新插件的步骤,这应该是比较容易做到的。

但是如果想要插件升级期间,插件功能完全不受影响,还需要你们能够编写正确的升级脚本。但是这也不是 100% 可以保证的,如果你的插件有些较大的变化,升级脚本也不能保证服务不受影响。

所以你是更需要哪一种?

插件简化更新步骤收益并不大,对于开发者来说后面的才是需要关注的点。