2012-03-29 23 views
1

目前在我们的工作流应用程序,如果它遇到一个未处理的异常会从最近持续状态重新加载工作流程,然后再试一次。有没有什么方法可以配置它的工作原理?如果服务停止,例如工作流会重新周围的每一个第二和尝试再次运行,当有多个工作流程都在做同样的事情会导致每分钟数千例外。重试周期未处理的异常后,在工作流中

我觉得用在workflowIdle的timeToPersist和timeToUnload性质可能有一些与此有关。目前,我们有这样的设置为:

如果我设置timeToUnload 1分钟将意味着工作流将只能够每分钟重试一次?

回答

0

TimeToPersist和TimeToUnload不会发挥作用这里 - 这些值确定工作流程具有了多久,正在持续/卸载被闲置。

你或许可以用WorkflowApplication.OnUnhandledException创建捕获所有异常的处理程序(假设你使用这个类来创建工作流)。

http://msdn.microsoft.com/en-us/library/system.activities.workflowapplication.onunhandledexception.aspx

+0

这些托管xamlx工作流程IIS所以这是一个没有去 - 这是不是处理例外 - 那里的一切工作100%我希望它的方式,我登录使用流程跟踪例外。唯一的问题是工作流程会重新恢复并立即重新尝试。如果我有成千上万运行的工作流程和服务出现故障,我可以有成千上万的尝试一分钟(因此成千上万的失败),然后提出了很多额外的负载在服务器上。我想设置它,以便在重试之前工作流程将等待一会儿。 – Wiredness 2012-03-30 07:57:27