max worker threads (Option)
Aktualisiert: 05. Dezember 2005
Mithilfe der Option max worker threads können Sie die Anzahl von Arbeitsthreads konfigurieren, die Microsoft SQL Server-Prozessen zur Verfügung stehen. SQL Server verwendet die systemeigenen Threaddienste der Betriebssysteme Microsoft Windows 2000 und Windows Server 2003, sodass jedes Netzwerk, das gleichzeitig von SQL Server unterstützt wird, von mindestens einem Thread unterstützt wird. Ein weiterer Thread verarbeitet die Datenbank-Prüfpunkte, und ein Threadpool verarbeitet alle Benutzer.
Zweck der Option "max worker threads"
Threadpools erleichtern das Optimieren der Leistung, wenn sehr viele Clients mit dem Server verbunden sind. In der Regel wird ein getrennter Betriebssystemthread für jede Clientverbindung erstellt, damit weniger Systemressourcen beansprucht werden. Wenn jedoch bei Hunderten von Verbindungen mit dem Server weiterhin ein Thread pro Verbindung verwendet wird, kann dabei eine große Menge an Systemressourcen verbraucht werden. Die Option max worker threads ermöglicht SQL Server das Erstellen eines Pools mit Arbeitsthreads, der eine große Anzahl von Clientverbindungen versorgen kann und so zur Verbesserung der Leistung beiträgt.
Berechnen von "max worker threads"
Mit dem Standardwert 0 für max worker threads wird die Anzahl von Arbeitsthreads beim Start automatisch von SQL Server konfiguriert. Diese Einstellung ist für die meisten Systeme optimal geeignet. Abhängig von der Konfiguration des Systems kann jedoch durch Festlegen von max worker threads auf einen bestimmten Wert manchmal die Leistung verbessert werden.
In der folgenden Tabelle werden die automatisch konfigurierte maximale Anzahl von Arbeitsthreads für verschiedene Kombinationen von CPUs und Versionen von SQL Server dargestellt.
Anzahl von CPUs | 32-Bit-Computer | 64-Bit-Computer |
---|---|---|
<= 4 Prozessoren |
256 |
512 |
8 Prozessoren |
288 |
576 |
16 Prozessoren |
352 |
704 |
32 Prozessoren |
480 |
960 |
Hinweis: |
---|
Wir empfehlen 1024 als Maximum für die 32-Bit-Version von SQL Server und 2048 für die 64-Bit-Version von SQL Server. |
Wenn die tatsächliche Anzahl von Benutzerverbindungen geringer als der für max worker threads festgelegte Wert ist, werden alle Verbindungen von einem Thread verarbeitet. Wenn die tatsächliche Anzahl von Verbindungen jedoch den für max worker threads festgelegten Wert überschreitet, erstellt SQL Server einen Pool von Arbeitsthreads, damit die Anforderung vom nächsten verfügbaren Arbeitsthread verarbeitet werden kann.
Aktualisieren von SQL Server 2000
Die Standardeinstellung für max worker threads in SQL Server 2000 war 255. Beim Aktualisieren einer Instanz von SQL Server 2000 Datenbankmodul auf SQL Server 2005 bleibt der Konfigurationswert für max worker threads erhalten. Wenn ein Update durchgeführt wird, sollte der SQL Server 2005-Wert für max worker threads geändert und auf 0 festgelegt werden, damit Datenbankmodul die optimale Anzahl von Threads berechnen kann.
Festlegen von "max worker threads"
Bei max worker threads handelt es sich um eine erweiterte Option. Wenn Sie die Einstellung mithilfe der gespeicherten Systemprozedur sp_configure
ändern, können Sie max worker threads nur ändern, wenn show advanced options auf 1 festgelegt ist. Das System muss neu gestartet werden, damit die neue Einstellung wirksam wird.
Hinweis: |
---|
Wenn alle Arbeitsthreads aktiviert sind, kann es sein, dass SQL Server bei Abfragen mit langer Ausführungszeit scheinbar nicht mehr reagiert, bis ein Arbeitsthread abgeschlossen und verfügbar wird. Dies ist zwar kein Fehler, aber in bestimmten Situationen unerwünscht. Wenn ein Prozess scheinbar nicht mehr reagiert und keine neuen Abfragen verarbeitet werden können, stellen Sie mithilfe der dedizierten Administratorverbindung (DAC) eine Verbindung mit SQL Server her, und brechen Sie den Prozess ab. Um diese Situation zu verhindern, erhöhen Sie den Wert für die maximale Anzahl von Arbeitsthreads. |
Siehe auch
Aufgaben
Vorgehensweise: Verwenden der dedizierten Administratorverbindung zu SQL Server Management Studio
Konzepte
Festlegen von Serverkonfigurationsoptionen
Verwenden einer dedizierten Administratorverbindung
Andere Ressourcen
RECONFIGURE (Transact-SQL)
sp_configure (Transact-SQL)
Hilfe und Informationen
Informationsquellen für SQL Server 2005
Änderungsverlauf
Version | Verlauf |
---|---|
05. Dezember 2005 |
|