0

J'ai une configuration de projet de site Web pour utiliser IIS Express de Visual Studio 2012. Une fois démarré, il utilise lentement de plus en plus de mémoire sur mon ordinateur de développement. Une fois que je l'ai déployé, il semble rester assez stable. Évidemment, il y a une fuite de mémoire quelque part mais comme il ne semble pas se produire sur le serveur live, je ne m'inquiète pas trop (et après des jours d'essayer de le déboguer je ne l'ai toujours pas trouvé.)Comment limiter l'utilisation de la mémoire d'IIS Express/forcer un recyle

Sur mon ordinateur de développement si j'oublie de le désactiver pendant la nuit, il mange toute la mémoire sur mon système et commence à paginer sur le disque. Quand je rentre le lendemain matin, il faut beaucoup de temps pour le tuer, car le système d'exploitation a également été poussé dans la mémoire paginée et est extrêmement lent.

En regardant l'exemple sur https://technet.microsoft.com/en-us/library/cc745955.aspx Je pense que je devrais être en mesure de forcer le pool d'applications à se recycler quand il atteint le niveau 3gig utilisé pour éviter le problème.

Je suis allé dans mon C: \ Users \ nom d'utilisateur \ Documents \ IISExpress \ config \ applicationhost.config fichier et remplacé le premier qui suit la section avec pool d'applications:

<add name="Clr4IntegratedAppPool" managedRuntimeVersion="v4.0" managedPipelineMode="Integrated" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true"> 
    <recycling> 
     <periodicRestart privateMemory="600000"> 
      <schedule> 
       <clear /> 
      </schedule> 
     </periodicRestart> 
    </recycling> 
</add> 

Malheureusement, quand mon projet est Je cours heureusement bien au-delà de la limite de 600 000 Ko que j'essaie d'imposer sans redémarrer. J'ai essayé à la fois la mémoire et l'attribut privateMemory, les deux ne font rien. Mon projet est configuré pour utiliser le mode intégré .NET v4.0 et, en jouant avec Microsoft.Web.Administration, je suis à peu près certain que mes modifications de configuration ajustent le bon pool d'applications et que le paramètre de recyclage est chargé dans mon projet, (mais je suis nouveau dans cette bibliothèque, donc je ne suis pas totalement sûr.)

Répondre

0

Comme il est conçu pour être un serveur de développement, tous les paramètres du pool d'applications sont négligés et s'exécutent en tant qu'instance unique.

Vous devez passer à IIS complet si vous souhaitez tester d'autres fonctionnalités du serveur Web, telles que les pools d'applications.