Die IIS-Arbeitsprozesse beanspruchen viel Speicher auf unseren Servern. Ich möchte den Speicherplatz begrenzen, den jede Anwendung verwenden kann. Ich bin verwirrt, ob ich ein Limit für den virtuellen oder den privaten Speicher festlegen soll. Jede Anwendung in unserem IIS befindet sich in einem eigenen Anwendungspool.
Wenn ich das private Speicherlimit auf 500 MB und das virtuelle Speicherlimit auf 3 GB einstelle. Wann wird der Anwendungspool wiederverwendet? Wird nach Erreichen von 500 MB oder nach Erreichen von 3 GB recycelt.
iis
iis-7
iis-6
memory-leak
virtual-memory
Kishore
quelle
quelle
Advanced Settings -> Recycling
.Antworten:
IIS wird diese beiden Grenzen einhalten.
Wenn Sie ein privates Byte-Limit von 500 MB festlegen, startet IIS einen neuen Arbeitsprozess und beendet den alten, sobald ein Arbeitsprozess versucht, 501 MB festzuschreiben.
Wenn Sie ein virtuelles Speicherlimit von 3 GB festlegen, startet IIS einen neuen Arbeitsprozess und beendet den alten, sobald ein Arbeitsprozess versucht, 3.001 GB zu reservieren.
Wenn Sie auf einer 64-Bit-Plattform arbeiten, sollten Sie wissen, dass die ASP.NET-App aggressiv virtuellen Speicher reserviert. Als Beispiel habe ich eine App in einer Farm, die nur 88 MB privater Bytes verwendet, aber derzeit eine virtuelle Größe von 5,4 GB hat. Ich glaube, die virtuelle Speicherreservierung ist eine Funktion des physischen RAM auf dem Server. Es ist auch wichtig zu verstehen, dass das Reservieren großer Teile des virtuellen Speichers auf einer 64-Bit-Plattform keine Auswirkungen auf die Leistung hat.
Grundsätzlich gilt: Wenn Sie Probleme mit dem Speicherverbrauch auf einem IIS-Server haben, sollten Sie die Einstellung Privater Speicher / Bytes einschränken. Dies entspricht der tatsächlichen Speichernutzung.
quelle