2012-03-29 22 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