45 votes

Étrange erreur survenue lors de l'utilisation de wcf pour exécuter une requête sur le serveur SQL

Je suis de la construction d'une asp.net l'application, à l'aide de II6 sur windows server 2003 (hébergement vps). Je suis confronté à une erreur je n'ai pas reçu sur ma machine de développement (windows 7, iis 7.5, 64 bits).

Lors de mon service wcf essaie de lancer ma requête en cours d'exécution à l'encontre d'un serveur sql local c'est l'erreur que je reçoit:

La mémoire des portes de la vérification a échoué parce que la mémoire libre (43732992 octets) est moins de 5% de la mémoire totale. En tant que résultat, le service ne sera pas disponible pour des demandes entrantes. Pour résoudre ce problème, soit de réduire la charge sur la machine ou d'ajuster la valeur de minFreeMemoryPercentageToActivateservice sur le serviceHostingEnvironment élément config.

et des idées??

137voto

BrainSlugs83 Points 1336

Dans votre site web.config, dans votre configuration\système.serviceModel\serviceHostingEnvironment élément, ajouter un minFreeMemoryPercentageToActivateservice attribut, et quelque chose d'inférieur à 5, j'ai mis le mien à 0, et cette erreur est allé loin pour moi.

ex:

<configuration>
  <system.serviceModel>
    <serviceHostingEnvironment ... minFreeMemoryPercentageToActivateService="0" />
  </system.serviceModel>
</configuration>

Attention via MSDN: "la Spécification de cet attribut avec une confiance partielle dans le web.fichier de configuration d'un service WCF entraînera une SecurityException lorsque le service est exécuté."

14voto

Daniel Dyson Points 9913

Une chose que vous pourriez essayer est de changer votre chemin de service 'mex' en absolu s'il ne l'est pas déjà. Cela a fonctionné pour moi une fois. Mais cela aurait pu être dû au redémarrage du service et à la libération de mémoire.

La réponse de BrainSlug a un exemple de comment faire cela

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X