Os processos de trabalho do IIS estão consumindo muita memória em nossos servidores. Quero limitar a memória que cada aplicativo pode usar. Estou confuso se devo definir um limite no limite de memória virtual ou no limite de memória privada. Cada aplicativo em nosso IIS está em seu próprio pool de aplicativos.
Se eu definir o limite de memória privada para 500 MB e o limite de memória virtual para 3 GB. Quando o pool de aplicativos é reciclado? Recicla após atingir 500 MB ou 3 GB.
iis
iis-7
iis-6
memory-leak
virtual-memory
Kishore
fonte
fonte
Advanced Settings -> Recycling
seção de um pool de aplicativos .Respostas:
O IIS respeitará esses dois limites.
Se você definir um limite de 500 MB de bytes particulares, assim que um processo de trabalho tentar confirmar 501 MB, o IIS ativará um novo processo de trabalho e eliminará o antigo.
Se você definir um limite de 3 GB de memória virtual, assim que um processo de trabalho tentar reservar 3.001 GB, o IIS ativará um novo processo de trabalho e eliminará o antigo.
Se você estiver em uma plataforma de 64 bits, saiba que o aplicativo ASP.NET reserva agressivamente a memória virtual. Como exemplo, eu tenho um aplicativo em um farm que usa apenas 88 MB de bytes privados, mas está no tamanho virtual de 5,4 GB no momento. Eu acredito que a reserva de memória virtual é uma função da RAM física no servidor. Também é importante entender que, em uma plataforma de 64 bits, reservar grandes porções de memória virtual não causa impacto no desempenho.
Basicamente, se você estiver com problemas de consumo de memória em um servidor IIS, a configuração que você deseja limitar é Memória Privada / Bytes, isto é o que corresponde ao uso real da memória.
fonte