Die Leistung von SQL Server hängt von mehreren Faktoren genannt Leistungsindikatoren. Überwachung der Leistung ist nicht so sehr darum, ob die CPU ausgelastet ist, aber ob es verschwendet Zeit auf der Arbeit , die vermieden werden können. Processor Time
Führen Sie ein Betriebssystem Dienstprogramm wie PerfMon (Performance Monitor) an den Prozessor zu beobachten . Wenn es nicht zeigen den CPU-Engpass , verwenden Sie SQL Profiler oder beobachten Laufzeit von SQL-Abfragen auf SQL Analyzer . Häufige Ursachen sind ineffizient Speichernutzung, ineffizient Wiederverwendung von Abfrage-Pläne und ineffizient geschrieben SQL-Code .
Context Switching
Die Anzahl der Kontext -Switches gemacht durch die CPU pro Sekunde sollte nicht mehr als den Schwellenwert von 5000 . Wenn dies geschieht , deaktivieren Kontext - Umschaltung ( oder Hyper-Threading ) .
Processor Queue Length
Es sollten nicht mehr als fünf Prozesse im System Warteschlange .
Häufigkeit der Erstellung
Beobachtung der Trend , wie oft das Projekt kompiliert und kompiliert hilft überwachen die Häufigkeit der Erstellung . Ändern Compiler-Schalter , um unnötige Zusammenstellung.
Checkpoints und Faule Schreibt
Die SQL Server -Cache leert an einem Kontrollpunkt in SQL-Code zu vermeiden. Checkpoints werden bei großen Updates und fügt als eine Möglichkeit der Transaktion verwendet. Zu viele Checkpoints pro Sekunde wird eine CPU-Engpass durch Auslösen "lazy schreibt ", dh schriftlich Cache zurück in den permanenten Speicher mit unnötig hoher Frequenz.
Cache Hit Ratio, erstellen
Wenn der SQL Server nicht Wiederverwendung ist Abfrageplänen , erzeugt er einen neuen Plan jedes Mal für häufig Abfragen ausführen . Dies schafft eine hohe Cachetrefferrate , dh Zugriff auf die Festplatte .