本周末在伊利诺斯州Lisle的SharePoint周六,Robert Bogue表示活动和运行工作流程之间存在差异。我看过网络,但有人可以澄清一下吗?
如果我在服务器上可以拥有数百万个活动工作流,为什么每台服务器只能运行15个左右的工作流?
答案 0 :(得分:1)
是的,是的区别:
OnItemChanged
或DelayActivity
。理解这一点的关键是WorkflowEventDeliveryThrottle(此处针对SP2007,因为2010年的文档不存在)。此标准值是属性为15.这意味着只有15个并发工作流可以同时运行。达到此限制后,工作流将排队到OWSTimer,OWSTimer会在一段任意时间后执行工作流(我认为工作流计时器作业设置为每5分钟一次)。
可以使用stsadm
更改此限制(AFAIK Powershell不起作用 - 您可以通过代码设置SPWebService.WorkflowEventDeliveryThrottle
来更改属性):
stsadm -o setproperty -pn workflow-eventdelivery-throttle -pv "20"
现在,“正在运行”的工作流程的最大数量(更好的是“可以同时处理的最大工作流事件数”)将是20.请参阅某些人other SO post使用参数。
有一篇很好的技术博客文章来了解工作流程事件处理:About the “workflow-eventdelivery-throttle” parameter。
与节流类似的是WorkflowEventDeliveryBatchSize,表示批量处理的工作流事件的最大数量。
<小时/> 的总结:强>