Wir haben eine SQL Server R2 Web Edition-Datenbank, die auf Windows Server 2008 R2 mit einer starken CPU und 32 GB RAM DDR3 basiert.
Unsere Datenbank arbeitet sehr hart (wir führen ungefähr 600.000 Abfragen in 1 Minute aus) und die CPU wird verrückt (25% bis 90%).
Ich habe mich um langsame Abfragen gekümmert, einige gefunden, behoben, andere habe ich gerade abgebrochen, um zu prüfen, ob es helfen wird, aber nicht, die CPU ist immer noch sehr hoch.
Ich habe mich gefragt, was es sonst noch sein könnte. Ich bin kein DBA, aber ich arbeite mit einem sehr erfahrenen, er erstellt alle Indizes und konfiguriert die DB neu, aber die CPU ist immer noch sehr hoch, und dieser DBA (mit mehr als 20 Jahren Erfahrung) ist eine Art hoffnungslos und weiß nicht wirklich, wie man das Problem findet.
Ich habe mich gefragt, ob es ein Caching-Problem sein könnte. so werden Abfragen nicht zwischengespeichert?
Weiß jemand was es sein kann? Was können wir machen? Wie können wir das untersuchen?
Vielleicht ist es nur die große Anzahl von Anfragen?
Ich würde gerne jede kleine Information bekommen, die Sie geben können!
Antworten:
Ich würde empfehlen, mit einer Methode wie Waits and Queues zu beginnen . Bei 10.000 Abfragen pro Sekunde sollten Sie jedoch damit rechnen, dass einige CPUs brennen. Ob es mehr ist als es sein sollte , ist wirklich schwer zu sagen, nur anhand der Informationen, die Sie gegeben haben. Die verknüpfte Methodik hilft Ihnen zumindest dabei, Engpässe zu finden.
Der größte Knall für das Geld wäre wahrscheinlich ... keine 10.000 Anfragen pro Sekunde zu senden. Cache im Client. Sehen Sie sich an, wie StackOverflow mit SQL Server skaliert, und sehen Sie, wie SE so viel wie möglich in der Webebene zwischenspeichert, bevor Sie den Server erreichen.
Machen Sie für alle Fälle ein paar
DBCC SQLPERF ('SPINLOCKSTATS')
und sehen Sie, ob etwas auffällt.quelle
Eine hohe CPU-Auslastung könnte eines der anderen Probleme sein:
Ich würde diese Dinge überprüfen, bevor ich weiter gehe.
quelle
http://www.petri.co.il/pagefile_optimization.htm
Dies wird Ihnen sicherlich helfen. Diese Seite zeigt, wie Sie die Optimierung des virtuellen Speichers und der Auslagerungsdatei nutzen.
quelle