Es gibt eine Maschine mit einem sehr schnellen RAID-Array und einer schnellen Internetverbindung. Aber sie hat nur 8 GB Speicher, was ausreichtWirklichschnell, wenn der Upload läuft.
Irgendwelche Ideen, wie ich den Cache deaktivieren oder einschränken kann?
(Ich habe versucht, den Schreibcache im Geräte-Manager zu deaktivieren. Aber das ist nur der Schreibcache und hat nicht geholfen.)
Antwort1
Der ganze Sinn des Caches besteht darin, dass erungebrauchtRAM und gibt ihn frei, sobald eine Anwendung mehr anfordert. Sie sollten die Größe also nicht begrenzen, da sonst der freie RAM völlig verschwendet wäre.
Antwort2
Sie müssen die System-API SetSystemFileCacheSize() aufrufen.
Hier dokumentiert:http://msdn.microsoft.com/en-us/library/aa965240.aspx
Einige GUI-Programme erlauben dies:http://technet.microsoft.com/en-us/sysinternals/bb897561
Möglicherweise bevorzugen Sie jedoch die CLI, um es automatisch beim Systemstart auszuführen:http://www.uwe-sieber.de/ntcacheset.html(schauen Sie in die Mitte der Seite, es funktioniert für 2k8)
Oder schreiben Sie einfach ein Powershell-Skript mit dem Aufruf SetSystemFileCacheSize()
Beachten Sie, dass dringend davon abgeraten wird, den Cache für die Verwendung in der Produktion zu deaktivieren.
Bei virtualisierten Maschinen wird die Cachegröße häufig auf einen kleinen Wert beschränkt und nicht deaktiviert.
Antwort3
Dieses Problem ist in unserem Unternehmen auch unter Windows Server 2008 R2 aufgetreten. In unserem Fall blieb die Maschine völlig hängen. Es scheint sich um einen Fehler dieser Serverversion von Windows zu handeln, da es unter denselben Umständen weder auf meiner viel kleineren Windows 7-Maschine mit VirtualBox noch unter Linux auftrat.
Sie können den Cache mit einer API auf ein bestimmtes Limit setzen, wie andere bereits gepostet haben, aber Sie können Anwendungen finden, um ihn direkt zu verwenden, wie zum BeispielSetSystemFileCacheSize.exeoderNT-Cache-Setter.
Der Nachteil ist, dass Sie den Cache nach jedem Neustart zurücksetzen müssen. Sie können damit auch den gesamten Cache auf einmal leeren.
Wir haben den Dateicache auf unserer VM mit 14 GB RAM auf 4 GB eingestellt und es funktioniert. Auch das Leeren funktioniert gut und Sie können es direkt im Task-Manager sehen.
Befehlszeilenbeispiele:
Aktuelle Windows-Einstellungen anzeigen:
SetSystemFileCacheSize.exe
Zeig Hilfe:
SetSystemFileCacheSize.exe /?
Stellen Sie die Mindestgröße auf 8 MB und die Maximalgröße auf 128 MB ein:
SetSystemFileCacheSize.exe 8 128
Deaktivieren Sie die Mindestgröße und legen Sie die Maximalgröße auf 128 MB fest:
SetSystemFileCacheSize.exe off 128
Minimale und maximale Größe deaktivieren:
SetSystemFileCacheSize.exe off off
Leeren Sie den Dateicache:
SetSystemFileCacheSize.exe flush
Hinweis: Das Tool muss mit Administratorrechten gestartet werden.
Antwort4
Um den Dateicache zu begrenzen, stellen Sie sicher, dass die Option „Maximal“ der Dateifreigabeleistung nicht aktiviert ist. Sie können die Mindestmenge an Speicherdateicache angeben, indem Sie „Verwendeten Speicher minimieren“ oder „Balance“ auswählen.
Um die aktuelle Konfiguration zu überprüfen, gehen Sie zu: Start->Systemsteuerung->Netzwerkverbindungen->LAN-Verbindung->Registerkarte „Allgemein“ > „Eigenschaften“ > „Datei und Drucker auswählen“ > „Eigenschaften“. Wenn die Option „Maximieren“ ausgewählt ist, wählen Sie eine beliebige andere Option.