我正在从模板克隆 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?
- 有没有其他方法可以实现这一点(例如:执行工作流的不同方式......)?