中国教育和科研计算机网
EDU首页 |  中国教育 |   高校科技 |   教育信息化 |   CERNET
教育信息化

资讯 | 专题 会议 观点 专栏 访谈 企业 产品 CIO 技术 校园信息化 下一代互联网 IPv6视频课堂

中国教育网 > 教育信息化
您现在的位置: EDU首页 > 教育信息化 > 集成应用 > 科研应用 > 科研共享
科学工作流协同建模环境的研究与实现
http://www.edu.cn   2012-07-30 中国教育网 作者:王秀和1 韩宁2 武装3

字体选择:【大】 【中】 【小】

  4.2基于令牌的协同建模机制

   协同建模过程中通常会产生大量的并发操作,而并发操作又容易造成操作冲突和操作冗余,这会影响到系统的稳定性,带来不必要的系统开销。为了有效解决协同建模过程中所产生的并发操作冲突和操作冗余的问题,笔者提出了一种基于令牌的协同建模方法[7]。该方法的主要原理是规划了工作流模型元素所对应的令牌,一个元素对应一个令牌,当多人协同建模过程中发生对同一流程元素的并发操作时,多个客户端会先争用令牌,只有获取令牌的客户端,才可以对相应的模型元素进行相应的操作,操作结束后系统自动释放令牌,供其他客户端争用。通过引入这种令牌处理机制,可以有效的规避多人同时修改流程或元素信息的情况,从而有效的减少了建模过程中产生的并发操作冲突和操作冗余。令牌的处理流程如图3所示。

图3:令牌处理流程

  5. 协同建模应用接口的设计

  为减少通信数据量,客户端与服务端之间以字符串格式发送协同建模命令。终端发送时首先将操作命令打包成字符串格式,接收时通过解析字符串来还原操作命令以执行相应操作。

  5.1操作命令发送接口

  synchronized void send (ArrayList opStr)

  该函数主要功能即将协同操作命令打包为字符串格式,并传递给服务端。

  其中opStr的格式为:

  [ 协同操作函数名, 该函数参数1, 该函数参数2,.…… ]

  下面提到的操作命令的字符串格式皆于此相同。

  5.2服务端建模操作解析接口为

  void operation(String process, String username, String opStr)

  其中process为当前会话的流程名,用于定位流程。username为该操作的发送人,用于定位客户端。opStr为字符串形式的操作命令。该函数的功能为解析客户端传递的字符串,再根据解析出的协同操作命令类型做相应的处理,处理方式如表1所示。

  表1 服务端协同操作的处理方式

  5.3客户端建模操作解析接口

  void co_operation(String opStr)

  该函数功能为接收服务端发送的字符串,并解析为具体的操作命令,从而调用相应的本地函数进行操作。当操作类型为建模操作时,操作结束后还需要发送一个令牌释放命令,释放该建模操作所占用的模型元素令牌。

页面功能 【打印】 【关闭】 【我有话说

MOOC风暴来袭

版权所有:中国教育和科研计算机网网络中心 CERNIC,CERNET,京ICP备15006448号-16,京网文[2017]10376-1180号

关于假冒中国教育网的声明 | 有任何问题与建议请联络:Webmaster@staff.cernet.com