Einige IIS-Verwaltungs-Cmdlets werden in PowerShell 4.0 langsam ausgeführt.
Dieser Artikel hilft Ihnen, das Problem zu beheben, bei dem Microsoft-Internetinformationsdienste (IIS)-Verwaltungs-Cmdlets in PowerShell 4.0 langsam ausgeführt werden.
Ursprüngliche Produktversion: Internetinformationsdienste, Windows Server 2008 R2, Windows PowerShell 4.0
Ursprüngliche KB-Nummer: 3144309
Problembeschreibung
Stellen Sie sich folgendes Szenario vor:
- Sie verwenden das IIS-Webverwaltungsmodul zum Erstellen und Verwalten von IIS-Webanwendungen mit PowerShell-Skripts.
- Sie führen Windows Server 2008 R2 aus.
- Sie verwenden
New-WebApplicationConvertTo-WebApplicationoder cmdlets.
In diesem Szenario werden Ihre Skripts in PowerShell 4.0 wesentlich langsamer ausgeführt als in PowerShell 2.0. Dieses Problem tritt nicht auf, wenn Sie dieselben Skripts in Windows Server 2012 oder höher ausführen.
Ursache
This issue occurs because the New-WebApplication and ConvertTo-WebApplication cmdlets generate a high volume of Component Object Model (COM) calls. Standardmäßig wird PowerShell 4.0 im STA-Threadingmodell und PowerShell 2.0 im MTA-Threadingmodell ausgeführt.
Lösung
Migrieren Sie nach Möglichkeit zu Windows Server 2012 oder höher. Einige Cmdlets werden in PowerShell 4.0 in einer Windows Server 2012 umgebung oder höher wesentlich schneller ausgeführt.
Um die Geschwindigkeit zu verbessern, führen Sie PowerShell mit dem -mta Switch aus:
Powershell.exe -mta
Alternativ können Sie PowerShell mit dem -version 2 folgenden Switch ausführen:
Powershell.exe -version 2