首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >打开Windows工作流的替代方案

打开Windows工作流的替代方案
EN

Stack Overflow用户
提问于 2009-07-02 16:48:02
回答 9查看 14.2K关注 0票数 17

预警:还有一些类似于此的问题,但没有完全回答问题(包括:Windows Workflow Foundation的替代方案?有人能推荐Workflow的.Net开源替代方案吗?)。

我们正在开发一个基于事件的状态机系统,目前我们正在研究windows工作流,我们的系统在响应来自多个源(xmpp、http、sms、电话、电子邮件等)的事件时需要低延迟,具有可扩展性和弹性,最重要的是可定制。出于各种原因(以及尽职调查),我正在寻找支持类似于Windows workflow Foundation的功能的开放式工作流引擎(如果可能的话)(但如果存在不支持某些功能的引擎,则无关紧要):

  1. 长期运行的任务的持久性,以及对外部事件的任务恢复
  2. 高性能,低延迟
  3. 开发自定义操作的能力
  4. 动态指定工作流的能力
  5. 跟踪和追踪

我不局限于平台或语言,我希望得到你们的一些帮助和建议,这样我就可以开始更仔细地调查引擎,以及你们对引擎的体验。

保罗。

EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2009-07-05 18:06:56

"Java侧“:

Apache (编排主任引擎)执行按照WS-BPEL标准编写的业务流程。它与web服务、发送和接收消息、处理数据操作和错误恢复进行对话,正如您的流程定义所描述的那样。它既支持长流程执行,也支持短流程执行,以编排作为应用程序一部分的所有服务。

http://ode.apache.org/

OSWorkflow可以被认为是一个“低级别”工作流实现。在其他工作流系统中,可能由图形图标表示的“循环”和“条件”等情况必须在OSWorkflow中“编码”。

http://www.opensymphony.com/osworkflow/

Shark是一个可扩展的工作流引擎框架,包括一个完全基于WfMC规范的标准实现,使用XPDL (没有任何专有扩展!)作为其本地工作流过程定义格式和用于服务器端执行系统活动的WfMC "ToolAgents“API。

http://www.enhydra.org/workflow/shark/index.html

Python:http://bika.sourceforge.net/ http://www.vivtek.com/wftk/ i这将帮助您:-)

票数 9
EN

Stack Overflow用户

发布于 2009-07-10 17:26:04

我邀请您进一步研究无国籍,正如对我的SO问题can-anyone-recommend-a-net-open-source-alternative-to-windows-workflow的回答所建议的那样。要实现长时间运行状态机的目标非常简单,因为您可以将状态的当前状态存储在数据库中,并在需要时重新同步状态机。请考虑来自无状态站点的以下代码:

无状态状态的设计考虑了ORM-ed域模型中的封装。一些ORM将需求放在可以存储映射数据的位置上。为此,StateMachine构造函数可以接受用于读写状态值的函数参数:

代码语言:javascript
复制
var stateMachine = new StateMachine<State, Trigger>(
    () => myState.Value,
    s => myState.Value = s);

只需非常少的努力,您就可以持久化您的状态,然后轻松地在稍后检索该状态。

在动态更新工作流方面,如果您配置了状态机,如

代码语言:javascript
复制
var stateMachine = new StateMachine<string, int>();

在XML中维护一个独立的状态和触发器文件,您可以在运行时通过遍历字符串int值对来执行配置。

票数 23
EN

Stack Overflow用户

发布于 2009-07-02 16:53:34

您可以考虑将流实现为实际的状态机。像状态机编译器拉格尔这样的工具可以在这方面有所帮助。在许多情况下,状态机正是您实现异常复杂的行为所需要的,这些行为是可测试的,而且是可靠的。我并不自称是Windows工作流专家,但据我所见,我怀疑它比手工或使用工具编写自己的状态机的优越性。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1075481

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档