• 业务工作流平台设计(四)


    自定义活动(一)

    这一小节要讲的东西,目前我认为是最重要的东西。这是业务工作流平台中非常重要的一部分;;也是模板的重要组成部分。我们将从以下几个方面讲述自定义活动:

    l  尽可能减少占有时间

    l  数据交换

    l  锁定处理

    l  保持状态的一致性及完整性

    l  中止活动的运行

    以下是针对自定义审核活动特有的设计

    l  功能逻辑的设计

    l  回退与重新递交

    l  跨审的实现

    尽可能减少占有时间

    WWF的一些技术细节与应用体会(一)中我讲过持久化的相关描述,该节虽然不讲技术化的问题,但却与锁定时间有关。所以不得不提SqlWorkflowPersistenceService,它的构造函数里面有一个参数instanceOwnershipDuration用来指定占有的时间。占有的时间过长对于时效性处理是很有害处的。所以我们应当尽量减少instanceOwnershipDuration的值。

    在现实生活时每个人的处理速度是不一样的,有的处理的快,有的处理的慢。有的人在处理过程中会去打点水,上个厕所什么的……那么我们究竟要将instanceOwnershipDuration设置为多少才合适?可能很多人会比较难以选择。

    其时,我这里是在故意误导大家!一开始的时候我也这么想过。那么有什么方法可以设置到一个比较小的范围(如10s)就可以让所有的处理都可以满足要求。这里有一个现象我得说一下。一个处理过程中计算机所要做的工作有两方面的内容:一是收集用户输入的信息;二是提交数据并进行相应的自动化处理。对于第一点来讲,占用的时间是不可准确估计的,但对于第二点来讲,占用的时间是极其有限的(一般情况下10s足够了)。我想大家可能知道我在说什么了。那就是我们在工作流运行期间不负责处理用户信息的收集。

    那么如何做到这一点呢?请看下面的小节。待续

  • 相关阅读:
    用idea开发springboot项目,提示Cannot resolve symbol 'RequestMapping'
    idea中创建maven项目是项目结构缺失,只有pom.xml文件
    Mysql5.7.17解压版安装
    scp命令,Linux系统之间通过目录或文件
    有关Linux中文件权限笔记
    主机映射
    在Linux中配置系统环境变量
    找回因克隆丢失的eth0网卡
    Linux系统中安装jdk
    Linux常用命令(vi/vim文本编辑)
  • 原文地址:https://www.cnblogs.com/llxxbb/p/BusinnessProcessPlatform4.html
Copyright © 2020-2023  润新知