流程运行状况的监控是实际流程执行过程中不可缺少的功能模块,因为在实际的执行过程中,需要观察阶段性的执行结果对流程实例进行终止、挂起等操作,还有对于不断改变设计版本的流程需要卸载旧版本流程定义,同时激活新的流程定义。
首先来看对整个系统的运行情况监控,这主要是指对系统所有已部署流程的监控。包括查看流程个数、实例个数、某流程定义文件、部署文件等。它的实现方式也很简单,在第三章的持久化小节中,我们说到所有的流程信息和实例信息都通过持久化层储存到数据库中,在这里我们只需要将持久化信息取出,并展现给用户便可以。
接下来是流程实例的监控,用户希望知道某次流程执行的实时情况,类似于程序的调试过程,可以查看流程执行过程中发送的信息、变量值和调用哪个Web服务,甚至暂停和继续执行实例等。这对于复杂流程的设计成功起着非常重要的作用,因为复杂流程设计难免出现纰漏,如果不能随着流程的实际执行过程进行调试,那么很难查找出流程运行过程中出现的问题、以及耗费时间最久的活动,并最终根据这些信息对流程进行改进。而监控正在运行的流程实例有一定的难度,处于运行态的流程实例只出现在引擎的内存空间中,其所有的当前执行信息都保存在流程定义对象中,而且这样的对象个数可能非常庞大(视流程所涉及的标签个数和标签被调用次数而定),如果通过读取这些对象的信息来获得实例运行状态,那么在用户请求的时刻就需要将该流程沿着它的路径再重新走一遍,来确定流程的执行状况。这无疑会增加系统负担,影响整体性能。
在本系统中,我们并没有设计实现具体的实例监控端,因为用户的需求不同可能会构建不同的监控平台(基于网页或客户端形式的),而是通过实例执行过程中不断触发不同的事件来监控流程运行。用户可以通过配置来指定所有事件的监听器来处理事件,如果只对某类事件感兴趣则只实现部分的监听器即可,配置好自己的监听器之后当流程运行过程中触发了该事件,就可以根据所截获的事件数据类型来判断流程当前的执行状况。事件中所包含的基本数据信息包括流程名称、流程ID、实例名称(流程名称加随机字串)、所触发的活动类型、触发时间、流程变量以及发送的内部消息格式等。用户拿到这些信息,同时结合流程定义,便可以判断当前实例的运行情况。
至于流程实例的生存周期管理的操作(暂停、恢复执行、终止等)的实现方法,其实在第三章流程运行小节中已经进行了简单介绍。在本系统中流程实例的执行过程,被分成了两个操作队列,一个是所定义的标签执行队列,另一个是所对应的回调队列。流程生存周期管理暂停、恢复执行、终止所对应的操作便是对这两个队列分别进行序列化、反序列化和清空的操作。这样便实现了实例运行状况的监控,用户可以使用系统预留的接口自定义所需的消息处理器,在获得消息数据之后经过用户系统加工,便可以形成一个流程系统监控程序,对设计的流程进行简单调试,加速流程设计的速度。
- 大小: 22.5 KB
分享到:
相关推荐
Apache ODE - 架构介绍
apache ode 参考资料 比较简短,而且包含实例,经过测试正确。
BPEL实例,Apache-ODE,Eclipse 该教程详细讲述了开发一个BPEL业务流程的详细步骤。先手动写好两个服务,一个是加法服务,一个是减法服务,然后希望构建一个bpel流程,该流程能够根据用户的输入来决定是调用加法服务...
Apache ODE(Orchestration DirectorEngine,编制指导引擎)是基于Java 的开源WSBPEL(简称BPEL) 引擎, 它于2007 年7 月18 日从Apache 的孵化器中诞生成为一个顶级项目。它的主要功能就是执行使用BPEL 描述的业务...
ODE的关键组成部分包括ODE BPEL编译器,ODE BPEL引擎 Runtime,ODE数据访问对象( DAOs ) ,ODE整合层(ILS) ,以及用户工具。
顶楼:Apache ODE的镜像
大牛所做的非常经典的ode教程,含各种高级ode内容,值得拥有~~~
基于OpenGL和ODE的三维物理仿真模型的设计,赵冰,,本文介绍了一种以开放源代码的图像引擎OpenGL和物理引擎ODE为基础,以赛车模型的创建为例,并结合了汽车的相关动力学,建立了一个三
bpel执行引擎用来执行bpel业务流程
matlab运用ode45的简单调用解微分方程范例。
ode45的使用,关于dydt,关于ode45的参数,等等
用深度学习建模任何常微分模型。神经常微分方程(Neural ODE),将神经网络与常微分方程结合在一起,用ODE来做预测。不是逐层更新隐藏层,而是用神经网络来指定它们的衍生深度,用ODE求解器自适应地计算输出。
ODE中文参考资料ODE中文参考资料ODE中文参考资料ODE中文参考资料
三自由度振动系统simulink模型求解以及状态方程的ode45求解器求解
ode的碰撞检测中文学习资料,想要使用ode物理引擎做碰撞检测的朋友可以看看
ODE(Open Dynamic Engine)是一款动力学仿真软件。可以自由下载,然而如何入门学习是大多数人的一个难题。本程序来自日本人所写的ODE动力学仿真一书的例子。具有很强的针对性!
对非线性系统进行预测控制时,首先要对非线性方程进行求解。通过网上搜查得知matlab提供了ode45(常微分方程的数值求解)。
[E3ODE专用MM] multiMAN 4.50.01 BASE with SHOWTIME4MM for BD-R and ODE 这个是E3ODE硬破版专用MM 使用时需接网线,不然卡开头.
MATLAB中函数ODE45的使用及详解。帮助深入认识ODE45
动力学引擎ODE 0.13最新版本 The Open Dynamics Engine (ODE), Copyright (C) 2001-2007 Russell L. Smith. ------------------------------------------------------------------------- ODE is a free, ...