Proses pekerja IIS mengambil banyak memori di server kami. Saya ingin membatasi memori yang dapat digunakan setiap aplikasi. Saya bingung apakah saya harus menetapkan batas pada Batas Memori Virtual, atau Batas Memori Pribadi. Setiap aplikasi di IIS kami ada di kumpulan aplikasinya sendiri.
Jika saya menetapkan batas memori pribadi ke 500MB dan batas memori virtual ke 3GB. Kapan pool aplikasi didaur ulang? Apakah akan didaur ulang setelah mencapai 500MB atau setelah mencapai 3GB.
iis
iis-7
iis-6
memory-leak
virtual-memory
Kishore
sumber
sumber
Advanced Settings -> Recycling
.Jawaban:
IIS akan menghormati kedua batasan itu.
Jika Anda menetapkan batas byte pribadi 500MB, segera setelah proses pekerja mencoba untuk melakukan 501MB, IIS akan memunculkan proses pekerja baru dan membunuh yang lama.
Jika Anda menetapkan batas memori virtual 3GB, segera setelah proses pekerja mencoba untuk memesan 3.001GB, IIS akan memunculkan proses pekerja baru dan membunuh yang lama.
Jika Anda menggunakan platform 64bit, Anda harus menyadari bahwa memori virtual aplikasi ASP.NET agresif. Sebagai contoh, saya memiliki aplikasi di pertanian yang hanya menggunakan 88MB byte pribadi, tetapi ukurannya 5,4GB Ukuran Virtual saat ini. Saya percaya reservasi memori virtual adalah fungsi dari RAM fisik di server. Penting juga untuk dipahami bahwa pada platform 64bit, pemesanan sebagian besar memori virtual tidak memiliki dampak kinerja yang nol.
Pada dasarnya, jika Anda mengalami masalah konsumsi memori pada server IIS, pengaturan yang ingin Anda batasi adalah Private Memory / Bytes, ini yang sesuai dengan penggunaan memori yang sebenarnya.
sumber