用于医疗物联网消息路由装置的插件热更新系统及方法制造方法及图纸

技术编号:33531167 阅读:10 留言:0更新日期:2022-05-19 02:02
本发明专利技术公开了一种用于医疗物联网消息路由装置的插件热更新系统及方法;插件热更新系统包括生命周期管理模块、插件加载器、生命周期监听器、插件处理器、插件同步器和类加载管理器;本发明专利技术能够不停机对基于可视化便捷流计算的医疗物联网消息路由装置进行插件更新处理,能够以不停机、不重启的方式扩展业务功能,有效的减少因业务扩展而导致的系统不可用和数据丢失,并且能够支持插件热更新。本发明专利技术系统及方法针对医疗物联网领域,可以有效的在线扩展业务的能力,并且能够动态扩展接入设备,可以有效的防止重启导致的服务不可用。可以有效的防止重启导致的服务不可用。可以有效的防止重启导致的服务不可用。

【技术实现步骤摘要】
用于医疗物联网消息路由装置的插件热更新系统及方法


[0001]本专利技术属于插件升级
,具体涉及一种用于医疗物联网消息路由装置的插件热更新系统及方法。

技术介绍

[0002]本专利技术是基于可视化便捷流计算的医疗物联网消息路由装置提供的一套可以被第三方实现或者扩展的技术,可以用来扩展插件或替换插件。现有的技术与本专利技术近似的实现方案是dubbo的spi机制,该方案的主要功能是将接口的实现类的全限定名定义在配置文件中,并有服务器读取配置文件,并加载实现类。这样就可以在运行的时候,动态为接口替换实现类。该方案暂不能实现未被服务定义接口的实现类的加载,且不能进行热更新,因此此方案欠缺了对基于可视化便捷流计算的医疗物联网消息路由装置的数据整合能力的支撑且大大降低了使用人员的用户体验。并且无法适应对不同领域的非结构化数据做针对性处理的。
[0003]在《基于可视化便捷流计算的医疗物联网消息路由装置及方法》的专利中,描述了消息路由装置是由不同的细粒度的组件组合形成的,那么这些插件无法做到动态的更新和加载,因为插件当中既包含了前端的表单,又包含了后端的业务逻辑,因此本专利技术主要是来解决原先专利中插件无法热更新的问题。
[0004]《基于可视化便捷流计算的医疗物联网消息路由装置及方法》:已授权专利,专利编号为ZL 202010892002.1
[0005]插件:作为《基于可视化便捷流计算的医疗物联网消息路由装置及方法》专利中所描述的节点,是一种细粒度的业务功能,兼具前端的表单和后端的业务逻辑
>[0006]PluginLifecircle:插件功能模块的生命周期管理
[0007]PluginLoader:插件加载器
[0008]PluginLifecycleListener:插件功能模块的生命周期监听器
[0009]PluginHandler:插件处理器
[0010]NodeSyncronizer:插件同步器
[0011]ClassLoaderManager:类加载管理器
[0012]Storage:存储管理(消息路由装置的流程中心)
[0013]JVM:Java虚拟机,为消息路由装置系统与插件热更新系统提供运行环境。
[0014]Spi:SPI是JDK内置的一种服务提供发现机制

技术实现思路

[0015]针对在《基于可视化便捷流计算的医疗物联网消息路由装置及方法》中的的节点无法进行在线更新,导致限制了医疗物联网设备接入后的业务功能的扩展。本专利技术提供了一种用于医疗物联网消息路由装置的插件热更新系统及方法。
[0016]本专利技术利用自研的类加载器的热更新技术,实现一个类加载器实例只加载一个插
件,做到插件隔离,来进行在线扩展消息路由装置节点。加载成功后,《基于可视化便捷流计算的医疗物联网消息路由装置及方法》这篇专利的中的消息路由装置会重新加载插件中的表单和业务逻辑,这样就做到了前端表单和后端的业务逻辑在线扩展和更新。
[0017]一种用于医疗物联网消息路由装置的插件热更新系统,包括生命周期管理模块、插件加载器、生命周期监听器、插件处理器、插件同步器和类加载管理器。
[0018]所述的生命周期管理模块:用于管理整个插件热更新系统模块的生命周期,用于控制系统模块的启动和关闭。
[0019]插件加载器:对上传插件的事件进行分类(增加、修改和删除),按照不同的事件类型将插件指派给相应的插件处理器;
[0020]生命周期监听器:用于监听插件热更新系统运行时对插件的新增、更新以及删除动作,当事件类型处理都处理完后,根据事件类型通知到插件同步器。
[0021]插件处理器:用于处理插件加载器中提供的插件。当插件上传或更新时,从类加载管理器中获取插件对应的类加载器加载插件。当插件删除时,从类加载管理器中去除该插件的类加载器。
[0022]插件同步器:同步插件,并通知到使用到该插件的消息路由装置,交由插件处理器进行加载或清理。
[0023]类加载管理器:管理所有插件对应的类加载器,用于完成添加新类加载器、删除已有类加载器以及查询类加载器的功能。
[0024]一种用于医疗物联网消息路由装置的插件热更新方法,步骤如下:
[0025]步骤(1)、插件上传;
[0026]通过生命周期管理模块该生命周期启动插件热更新系统,在消息路由装置流程可视化配置界面上,将插件以jar包的形式上传到插件热更新系统中。
[0027]步骤(2)、插件加载器加载插件并将插件派给插件处理器处理,
[0028]插件加载器加载插件并对上传插件的事件进行分类,按照不同的事件类型将插件指派给相应的插件处理器。所述的事件类型包括新增、更新、删除。
[0029]步骤(3)、不同的插件处理器根据上传插件的事件类型分别做不同的处理。
[0030]当事件类型为新增时,插件处理器通过新建一个类加载器实例对插件进行加载,将类加载器实例添加到类加载管理器中,通过新建的类加载器实例解析插件中的前端文件和后端文件,并将解析好的文件加载到Java虚拟机(JVM)中,并且存储到消息路由装置的流程中心,加载完成后,当消息路由装置的流程执行时将重新按照编排的内容实例化去执行。
[0031]当事件类型为更新时,插件处理器首先清理医疗物联网消息路由装置中已有的类加载器实例,然后新建一个类加载器实例对插件进行加载,通过新建的类加载器实例解析插件中的前端文件和后端文件,并将解析好的文件加载到Java虚拟机(JVM)中,同时将新建的类加载器实例更新到类加载管理器中,并且存储到消息路由装置的流程中心。
[0032]当事件类型为删除时,插件处理器需要删除掉加载当前插件的类加载器实例,并且清理掉消息路由装置的流程中心中当前插件的数据信息。
[0033]步骤(4)、通过用生命周期监听器监听插件是否完成加载,当事件类型处理都处理完后,根据事件类型通知到插件同步器,插件同步器会同步此插件并通知其他需要使用该插件的消息路由装置模块进行加载或清理。
[0034]本专利技术有益效果如下:
[0035]本专利技术能够不停机对基于可视化便捷流计算的医疗物联网消息路由装置进行插件更新处理,能够以不停机、不重启的方式扩展业务功能,有效的减少因业务扩展而导致的系统不可用和数据丢失,并且能够支持插件热更新。
[0036]本专利技术系统及方法针对医疗物联网领域,可以有效的在线扩展业务的能力,并且能够动态扩展接入设备,可以有效的防止重启导致的服务不可用。
附图说明
[0037]图1为本专利技术实施例方法流程图;
[0038]图2为本专利技术实施例系统结构示意图。
具体实施方式
[0039]以下结合附图与实施例对本专利技术方法进行进一步描述。
[0040]作为插件模块本身需要有个生命周期(PluginLifecircle)的模块,该生命周期具备启动关闭两个功能,分别对应启动插件模块功能和关闭插件模块功本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种用于医疗物联网消息路由装置的插件热更新系统,其特征在于,包括生命周期管理模块、插件加载器、生命周期监听器、插件处理器、插件同步器和类加载管理器;所述的生命周期管理模块:用于管理整个插件热更新系统模块的生命周期,用于控制系统模块的启动和关闭;插件加载器:对上传插件的事件进行分类(增加、修改和删除),按照不同的事件类型将插件指派给相应的插件处理器;生命周期监听器:用于监听插件热更新系统运行时对插件的新增、更新以及删除动作,当事件类型处理都处理完后,根据事件类型通知到插件同步器;插件处理器:用于处理插件加载器中提供的插件;当插件上传或更新时,从类加载管理器中获取插件对应的类加载器加载插件;当插件删除时,从类加载管理器中去除该插件的类加载器;插件同步器:同步插件,并通知到使用到该插件的消息路由装置,交由插件处理器进行加载或清理;类加载管理器:管理所有插件对应的类加载器,用于完成添加新类加载器、删除已有类加载器以及查询类加载器的功能。2.一种用于医疗物联网消息路由装置的插件热更新方法,其特征在于,步骤如下:步骤(1)、插件上传;通过生命周期管理模块该生命周期启动插件热更新系统,在消息路由装置流程可视化配置界面上,将插件以jar包的形式上传到插件热更新系统中;步骤(2)、插件加载器加载插件并将插件派给插件处理器处理,插件加载器加载插件并对上传插件的事件进行分类,按照不...

【专利技术属性】
技术研发人员:朱宗翔姚鹏王其
申请(专利权)人:创业慧康科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1