Estoy clonando máquinas virtuales en el servidor ESX desde la plantilla. código simplificado se ve así:Powershell 3.0 - Flujos de trabajo - Limite el número de ejecución en paralelo
Workflow Create-VM {
$List = 1..500
foreach -parallel ($Elem in $List)
{
# Create VM ...
# Configure created VM ..
}
}
Create-VM
La ejecución paralela es realmente útil. Desafortunadamente en este caso no funciona bastante bien. Se generan demasiadas solicitudes paralelas. Necesito limitar el número de ejecución paralela a un número más pequeño (por ejemplo 4).
Estaba intentando cambiar la configuración de sesión local (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
Pregunta
- Qué parámetro (o combinación) de configuración de sesión que debe cambiar, con el fin de limitar el número de ejecución en paralelo a 4?
- ¿Hay algún otro método de cómo puedo lograr eso (por ejemplo: forma diferente de ejecutar el flujo de trabajo ...)?
Gracias, funciona bien. – Starspace