流程虚拟机(PVM)
——一项直接支持多种流程语言的可嵌入技术
流程虚拟机是一个用于构建和执行流程图的简单Java库,它可以作为所有类型的工作流、业务流程管理(BPM)和流程语言编排的基础。
流程虚拟机是可嵌入的。传统的BPM和工作流技术,通常作为一套完整独立的系统提供,必须通过集成通讯来建立连接。这样的集成,带来很高的部署要求,常常使这项传统技术的门槛变得太高。流程虚拟机以可嵌入的BPM为理念构建,即BPM引擎是在您的应用架构中,作为应用的一部分运行的。如果需要持久,那些数据库表也是建在你的数据库中,和你的领域模型表放在一起。
因此,PVM可以运行在所有的Java环境。包括独立的Swing应用、运行在Servlet容器(如Tomcat)上的Web应用、Sping环境或基于应用服务器(如Jboss)的企业应用,所有这些,不论有没有持久到关系型数据库。
流程虚拟机是多流程语言的基础,天然支持基于PVM之上构建任何流程语言。在流程图中的每个活动的运行时行为,都委托给了一个Java接口。流程语言就是一组活动类型集。一个实现某种运行时行为的活动对应一种活动类型。因此,基于PVM构建一个流程语言,就是创建一套活动实现集,就这么简单。通过这种机制,语言本身也非常容易扩展,如JPDL。
【本文翻译仅为外语学习及阅读目的,原文作者个人观点与译者及译言网无关】