【发布时间】:2016-07-12 13:37:14
【问题描述】:
我正在尝试模拟我有一个决策者的情况,并且它出现故障,无论是维护还是更新(我最终也会为工作人员执行此操作,除非我只是将其移至 Lambda)。无论如何,我注意到如果我关闭我的决策器,然后我开始执行(使用 SWF 控制台),然后启动我的决策器,我永远不会收到任何 Decision* 事件。就好像永远迷失了一样。
我的猜测是我遗漏了一些明显的东西。我正在使用 boto3 来poll_for_decision_task
http://boto3.readthedocs.org/en/latest/reference/services/swf.html#SWF.Client.poll_for_decision_task
我是否应该采取其他一些初始步骤来获取决策者在线时尚未看到的任何先前执行?
奖金问题:
有时,即使决策程序正在运行,并且它正在轮询决策任务,并且我从 AWS 控制台提交任务,决策程序也永远不会被触发。
红利问题:
如果决策者确实获得了执行事件,并且它执行了StartTimer,例如 10 秒,如果我在安排 StartTimer 之后退出决策者然后我重新启动决策者,那么 TimerFired 事件永远不会出现。
在这两种奖励情况下,get_workflow_execution_history 显示执行在那里。 (http://boto3.readthedocs.org/en/latest/reference/services/swf.html#SWF.Client.get_workflow_execution_history)
【问题讨论】:
标签: python amazon-web-services boto3 amazon-swf