我有一个使用Invoke-Command
的PowerShell脚本,已经使用了大约一年,突然之间出现了非常糟糕的性能问题。通常需要1到2秒才能运行,现在大约需要90秒。令人困惑的是,它并不需要很长时间。实际上,今天我已经对其进行了很多次测试,并且在10-20分钟的时间内每次尝试都运行良好,然后在接下来的20-40分钟的测试时间内又恢复了缓慢的速度。 简单看一下我的测试代码:
$cred = New-Object System.Management.Automation.PSCredential $username, $securePassword
Write-Host "Running command..."
Invoke-Command -ComputerName $target -Credential $cred -ScriptBlock {
Write-Host "Hello"
}
Write-Host "Done"
结果的时间安排如下:
"Running command..."
65秒...
"Hello"
25秒...
"Done"
为此,我需要等待进程,然后才能看到命令的结果,所以我不能只将-AsJob
放到脚本中,而不必等待输出。我应该寻找什么来减慢速度呢?我检查了目标计算机的响应速度很慢,没有看到异常的CPU或内存使用情况。
我有一个使用Invoke-Command的PowerShell脚本,该脚本已经使用了大约一年,突然之间出现了非常糟糕的性能问题。现在通常需要1到2秒钟才能运行,现在需要...