在开发将执行大量工作项的自定义工作流时,一个或多个工作项可能会在其例程期间的任何时候失败,甚至可能引发异常。
在处理工作流管理器中工作项引发的异常时,最佳做法是什么?
例如,工作流管理系统是否只是记录错误然后彻底死亡?工作流管理器是否应该只记录异常并继续执行其他工作项?
答案 0 :(得分:2)
我想说这与情境有关。
Pack parcel
Dispatch parcel
当然,步骤1的失败肯定不会执行第2步?
Check price with vendor A
Check price with vendor B
...
Check price with vendor Z
Buy cheapest
可能一些价格检查失败不应妨碍整体完成。
我认为你至少需要启用
Park this for human intervention
和
Sorry your request could not be actioned.
但这非常棘手。您可能需要启用补偿(撤消以前的工作)。例如Book Hotel,尝试预订航班 - 失败,嗯还不够,只是为了中止我们还需要取消预订该酒店。
您可能还需要启用
That failed, I'll retry a little later.