SWF:获取工作流启动程序

时间:2016-03-05 16:54:40

标签: java amazon-web-services amazon-swf

我正在使用amazon-swf。

我有4项活动。它们都是异步的。

工作流程通过rest api调用从前端启动。

我想将所有4个活动的结果作为对api调用的响应返回。

由于@execute方法在从外部客户端调用时无法从void返回任何内容,因此我无法在工作流启动程序中获得所有4个活动的结果。

解决问题的一种方法是在启动程序中继续轮询工作流程历史记录,但我真的不认为这是最佳解决方案。那么,有效的方法是什么?我相信几乎每个使用amazon-swf的人都有类似的用例。

PS:我的其他程序运行正常。我得到了决策者实现中所有活动的结果。但我无法在启动工作流程的程序中获得它们。

1 个答案:

答案 0 :(得分:0)

在前端进程中运行特殊通知活动的标准模式。启动工作流时,它会将通知活动任务列表名称作为参数。然后在完成时将活动安排到指定的任务列表中。 API调用等待提供执行结果的活动调用。为确保在前端进程失败时工作流不会卡住,请指定短时间表以启动此类活动的超时。