Я клонирую виртуальные машины на сервере ESX из шаблона. Упрощенный код выглядит так:
Workflow Create-VM {
$List = 1..500
foreach -parallel ($Elem in $List)
{
# Create VM ...
# Configure created VM ..
}
}
Create-VM
Параллельное выполнение действительно полезно. К сожалению, в этом случае работает не очень хорошо. Генерируется слишком много параллельных запросов. Мне нужно ограничить количество параллельного выполнения меньшим числом (например, 4).
Я пытался изменить локальную конфигурацию сеанса (SessionThrottleLimit, MaxSessionsPerWorkflow, MaxRunningWorkflows) http://technet.microsoft.com/en-us/library/hh849862.aspx.
$WWE = New-PSWorkflowExecutionOption -SessionThrottleLimit 4
Set-PSSessionConfiguration -Name microsoft.powershell.workflow `
-SessionTypeOption $WWE
Get-PSSessionConfiguration microsoft.powershell.workflow |
fl SessionThrottleLimit
Вопрос
- Какой параметр (или комбинацию) Конфигурации сеанса следует изменить, чтобы ограничить количество параллельных выполнений до 4?
- Есть ли какой-то другой способ, как я могу этого добиться (например: другой способ выполнения рабочего процесса...)?