2011-06-13 3 views
2

이번 주말 Lisle, IL의 SharePoint 토요일에 Robert Bogue는 활성 워크 플로우와 실행중인 워크 플로우간에 차이점이 있다고 말했다. 나는 웹을 보았지만 누군가 명확히 할 수 있습니까?활성 워크 플로우와 활성 워크 플로우

서버에서 최대 수백만 개의 활성 워크 플로를 가질 수있는 경우 서버 당 15 개 정도만 워크 플로를 실행할 수 있습니까?

+0

질문에 답변 할 수있는 다른 방법이 있습니까? 질문에 답이 나온 경우 그 옆에있는 체크 표시를 사용하여 답을 표시 할 수 있습니다. –

답변

1

예, 차이 :

  • "실행" 워크 플로우는 현재 (즉 활동을 실행하는) 일을하는 모든입니다.
  • "활성" 워크 플로우는 단순히 "실행 중"이지만 현재 아무것도 수행하지 않고 있습니다. OnItemChanged 또는 DelayActivity을 기다리는 중입니다.

여기에 이해해야 할 핵심은 WorkflowEventDeliveryThrottle입니다. 여기에 2010에 대한 설명서가 없으므로 SP2007의 경우입니다. 표준 값은 속성 15입니다. 즉, 동시에 실행할 수있는 작업 흐름은 15 개뿐입니다. 이 제한에 도달하면 워크 플로는 임의의 시간이 지난 후 워크 플로를 실행하는 OWSTimer에 대기합니다 (워크 플로 타이머 작업이 5 분마다 설정 됨).

이 스로틀 (AFAIK 파워 쉘이 작동하지 않습니다 - 당신이 SPWebService.WorkflowEventDeliveryThrottle 설정 과정의 코드를 통해 속성을 변경할 수 있습니다) stsadm를 사용하여 변경할 수 있습니다 : 이제

stsadm -o setproperty -pn workflow-eventdelivery-throttle -pv "20" 

"실행"워크 플로우의 최대 수를 ("동시에 처리 할 수있는 워크 플로우 이벤트의 최대 수")는 20 일 것입니다. 누군가가 매개 변수로 작업하는 일부 other SO post을 참조하십시오.

워크 플로 이벤트 처리를 이해하는 데 유용한 기술 블로그 게시물이 있습니다 (About the “workflow-eventdelivery-throttle” parameter).

throttle과 마찬가지로 일괄 처리되는 워크 플로 이벤트의 최대 수를 나타내는 WorkflowEventDeliveryBatchSize입니다.


요약 : 당신은 활성 워크 플로우의 수천을 가질 수

  • , 예를 들어, 모두 워크 플로 항목이 변경 될 때까지 대기합니다. 그들은 끝나지 않고 달리는 것이 아니라 단순히 활동적입니다.
  • 동시에
  • 는 또한 워크 플로우, 예를 들어, 실행 의 수천 수 (당신이 "실행"워크 플로우라고 불렀다)에서 처리 할 수있는 워크 플로우 이벤트제한된 수있다 모두 5 분으로 설정된 지연 활동에 의해 트리거 될 수 있지만 제한된 수의 트리거 활동 만 동시에 실행되며 나머지는 나중에 실행되도록 대기열에 포함됩니다.