首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Amazon流处理超时

Amazon流处理超时
EN

Stack Overflow用户
提问于 2015-09-03 14:47:23
回答 2查看 2.7K关注 0票数 1

我正在使用Amazon的Flow框架for Java开发一个相对简单的工作流。我认为我对现在发生的一切都有很好的把握,但是我还有一个不确定的地方:我该如何处理超时呢?

我的工作流的主要超时是工作流本身上的executionStartToCloseTimeoutSeconds,但我可以想象,无论触发哪种超时,流程都是相同的。似乎大多数时候,当任务超时时,它就会消失。我希望能够知道什么时候发生这种情况,并做些什么(例如发送电子邮件或以某种方式记录它)。我四处搜索,找不到任何通知超时发生的例子。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-09-03 15:43:42

http://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-timeout-types.html

对于与活动相关的超时,简单的回答是您的决策器(即工作流)逻辑应该处理它。一旦您验证了逻辑并进行了重新尝试,您就不必担心超时的事情了。

对于工作流超时,您需要检查工作流历史记录/状态,以确定其超时。您肯定可以列出工作流执行,但是您可能必须直接通过SWF (即不是通过流)。无论如何,您都希望这样做,以捕获失败的工作流。

我在SWF中使用和看到的一种模式是有一种外部方式来跟踪通过SWF (想想DB)发送的工作,并使用它来检查已经开始和从未完成的工作。工作流本身在完成(或正在完成主要工作)时更新这一点,因此找出哪些工作流是有问题的是很简单的。

票数 2
EN

Stack Overflow用户

发布于 2015-09-03 17:40:59

活动超时以异常的形式传递给工作流代码,并且可以轻松处理。

IMHO工作流执行超时类似于Unix中的杀死-9。它杀死了工作流,却没有给它执行清理的机会。因此,它的主要用途是确保中断的工作流实例不会永远保持打开状态。

对于所有业务级超时不依赖于工作流超时,请使用计时器。当计时器触发时,您的工作流代码可以执行通知活动,并以适当的失败状态终止工作流。

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

https://stackoverflow.com/questions/32378888

复制
相关文章

相似问题

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