Ich hoffe jemand kann helfen. Wir haben einen Windows Server 2008 R2- Computer mit 16 GB RAM, auf dem der gesamte verfügbare Arbeitsspeicher von etwas aufgezehrt wird. Nichts im Task-Manager oder im Ressourcenmonitor gibt Aufschluss über Prozesse, die mehr als 300 MB Arbeitsspeicher beanspruchen. Der Arbeitsspeicher auf dem Server beläuft sich jedoch auf 15,7 GB.
Die einzigen Dinge, die ausgeführt werden, sind SQL Server 2008 und IIS7.5 (mit ASP.Net).
Hinweis: Die RAM-Auslastung nach einem Neustart ist niedrig und steigt an. Nach ungefähr einer Woche finden wir uns in dieser Situation wieder.
Wie kann ich herausfinden, was unser gesamtes Gedächtnis frisst? :(
windows-server-2008
memory
performance-monitoring
memory-usage
task-manager
Django Reinhardt
quelle
quelle
Antworten:
Handelt es sich um einen 64-Bit-Server? Sind die Sperrseiten in der lokalen Speicherrichtlinie aktiviert? SQL verbraucht wahrscheinlich den Rest Ihres Speichers. Wenn Sie sich die Leistungsindikatoren ansehen, sehen Sie die Speicherzuordnung
Hier ist ein Artikel, der es ausführlich erklärt
Sie können die Leistungsindikatoren auch in SQL anzeigen
quelle
Schnelltest: Starten Sie SQL Server neu.
Ein weiterer schneller Test: Starten Sie IIS neu.
Sie werden sicher wissen, ob einer von ihnen der Täter ist oder ob Sie woanders suchen müssen.
quelle
Es kann hilfreich sein, RamMap zu verwenden, um zu sehen, wo sich Ihr Speicher befindet.
quelle
Tritt bei Ihnen tatsächlich ein Speicherproblem auf?
Wird die Speichernutzung jemals höher als der tatsächlich installierte Speicher oder wird sie nur voll und bleibt dort?
Wenn der Speicher nur voll ist, Sie jedoch keine Probleme haben, erledigt der Cache nur seine Aufgabe. Der Speicher wird automatisch freigegeben, wenn Sie ihn tatsächlich benötigen.
Wenn die Speichernutzung die physische Grenze überschreitet und der Server zum Stillstand kommt, tritt ein Speicherverlust auf, der unbedingt behoben werden sollte.
Einige interessante Artikel zum Thema "Cache":
http://blogs.msdn.com/ntdebugging/archive/2007/11/27/too-much-cache.aspx
http://blogs.msdn.com/ntdebugging/archive/2007/10/10/the-memory -shell-game.aspx
http://blogs.msdn.com/ntdebugging/archive/2009/02/06/microsoft-windows-dynamic-cache-service.aspx
quelle
Haben Sie Perfmon (insbesondere die SQL-Zähler) überprüft, wie von jemandem in Ihrem anderen Thread vorgeschlagen?
quelle
Das erste ist, wie bereits gesagt, das Problem zu beheben.
Wenn dies nicht funktioniert hat, können Sie mit Process Explorer die Speichernutzung genauer untersuchen. Gehen Sie zum Menü Ansicht, wählen Sie Spalten aus, verarbeiten Sie Speicher und überprüfen Sie die Optionen Private Bytes, Virtuelle Größe und Arbeitssatzgröße. Sehen Sie, ob das darauf hindeutet, was hier schuld ist.
Ein drastischer Ansatz wäre dann, zu versuchen, Dienste zu stoppen. IIS kann zum Beispiel ein totales Speicher-Schwein sein, wenn Sie App-Pools und Webgärten falsch konfiguriert haben (zu viele von ihnen), das ist also ein Kandidat.
Viel Glück!
quelle