这些天因为项目的需要基于Vert.x和PF4J做了一个简单的插件式远程服务框架dfx。它是一个非常简单的小框架(或者称为微框架也行),其目的很简单:快速地将老旧 Java 类转变成为远程服务,降低这类工作的难度和门槛。
简单到什么程度呢?这么说吧:开发者只要实现一个指定的接口,然后将其打包成一个插件并复制到 dfx 指定的插件目录之下就 ok 了(当然,还需要修改对应的配置文件)。
至于为何选定 Vert.x 为支撑技术,原因在我之前的踩坑记中已经解答。而采用插件的原因则在于:
对于插件系统,我选择的是PF4J,一个小巧的插件实现。
除了简单和断路器支持,dfx 的还支持热更新,只是目前的方式简单粗暴:当发现任意一个变化(conf 和插件目录中 zip 包的变化)时,会重新加载整个服务,即相当于重启。
关于 dfx 的详细使用和插件的开发,可以从它的README得到更多细节。
觉得有帮助的话,不妨考虑购买付费文章来支持我们 🙂 :
付费文章