[发明专利]工作流引擎过程实例缓存提升性能的一种技术方法在审
申请号: | 201310650556.0 | 申请日: | 2013-12-06 |
公开(公告)号: | CN104699411A | 公开(公告)日: | 2015-06-10 |
发明(设计)人: | 李勇;贾春平 | 申请(专利权)人: | 北京慧正通软科技有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F12/08 |
代理公司: | 无 | 代理人: | 无 |
地址: | 100093 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 工作流 引擎 过程 实例 缓存 提升 性能 一种 技术 方法 | ||
技术领域
本发明涉及一种通过对过程实例提供内存缓存读写的方式,提升工作流引擎性能的技术方法。
背景技术
工作流技术是一个传统技术,也是一个不断发展更新的技术。目前的工作流引擎大多参照WFMC标准模型基础上进行设计。按照WFMC对工作流引擎功能定义,过程实例的处理是工作流引擎的核心任务。
过程实例处理,一般涉及到过程定义的实例化、实例的读写操作过程。 实例的存储一般采用数据库,因此访问过程就涉及到数据库访问,数据库访问需要必要的磁盘I/O操作,性能明显低于内存直接访问。对于一些高并发,实时性能要求较高的环境,经常会遇到响应速度无法满足需求,数据库连接在高并发时容易耗尽。
因此工作流引擎设计中,合理利用内存缓存方式,能有效降低数据库访问次数,将数据库访问尽可能转换为内存访问,将可以有效提升性能。在同等网络、硬件环境下,可以给用户提供更高效的工作流引擎服务。
在合理利用内存缓存提升性能的前提下,还要考虑到内存缓存在系统异常时,不能造成数据丢失,因此需要将数据的处理结果及时持久化,避免系统异常引起数据丢失。
综合上述考虑,过程实例的变更确认必须及时持久化,实例的访问可以提供缓存方式,这样可以将原来读取、写入两次数据库操作,优化为读取内存缓存的过程实例,写入时同步写入内存和数据库,数据库的访问次数大约减少一半,由于 内存访问的性能高,因为可以有效提升工作流引擎的性能。
本发明基于java技术实现,依托与java虚拟机提供的内存、线程池、中间件集群技术支撑。其中涉及到的接口技术,采用标准java接口实现方式。
发明内容
本发明由过程实例访问接口、过程实例持久化接口、物理缓存区读写接口、缓存实例管理模块、缓存策略管理模块、缓存管理线程组成。
过程实例访问接口,与原工作流引擎的实例读写访问对接,负责接收实例读取、写入的请求,确保原引擎功能不受或受到尽可能小的影响。
过程实例持久化接口,当来自过程实例访问接口的请求时实例数据的变更确认时,会触发此接口的操作,在事务一致性的前提下,将实例数据写入持久层,这样,即时发生系统宕机等异常,再次启动系统也不会丢失已经提交成功的数据。
物理缓存区读写接口,用于实现对物理内存的实际读写操作,此部分基于java虚拟机提供的内存访问分配实现。在集群环境,可以基于集群环境的内存共享技术或策略实现。
缓存实例管理模块,用来处理来自过程实例访问接口的请求,当实例尚未加载到内存时,负责将实例加载到内存缓存区。如果内存缓存区已存在当前实例,不再进行数据库读取,直接获取内存缓存的过程实例对象。在内存实例操作提交时,负责及时调用相关的持久化程序接口,完成实例的持久化。实例持久化完毕,在内存缓存策略允许的期间,不会从内存清除,大大优化了后续的访问性能。例如:如果一个过程实例的整个处理过程,没有超出缓存策略的驻留时间,整个流程处理过程的实例访问打开部分,都不需要进行数据库访问,可以降低大约一半的数据库访问次数。缓存实例管理模块,在处理并发访问时,采用优先级队列机制,进行访问序列的排队写入处理。在过程实例访问过程中,保持激活状态,访问结束,结束激活状态。记录最近激活时间,结束激活历时,为后面提到的内存管理线程提供操作依据。
缓存策略管理模块,用于配置过程实例的缓存策略,主要包括,缓存空间分配限额,缓存实例数量分配限额,最大活动实例数量,实例结束激活后的驻留最大时间限制。
缓存管理线程,基于java虚拟机提供的线程池,可以配置一个或者多个管理线程,这些管理线程,按照缓存策略,清理释放缓存空间。
附图说明
图1是 工作流引擎过程实例内存缓存技术方法的组成结构图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京慧正通软科技有限公司;,未经北京慧正通软科技有限公司;许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310650556.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种表用存储介质
- 下一篇:一种信息处理方法及电子设备