Странная ошибка, возникающая при использовании wcf для запуска запроса к серверу SQL - PullRequest
45 голосов
/ 21 мая 2010

Я создаю приложение asp.net, используя II6 на Windows Server 2003 (VPS хостинг). Я столкнулся с ошибкой, которую не получил на своей машине для разработки (windows 7, iis 7.5, 64 bit).

Когда моя служба wcf пытается запустить мой запрос на локальном сервере sql, я получаю следующую ошибку:

Не удалось проверить ворота памяти, потому что свободная память (43732992 байта) менее 5% от общей памяти. Как результат, сервис не будет доступно для входящих запросов. к решить это, либо уменьшить нагрузку на машине или отрегулируйте значение minFreeMemoryPercentageToActivateService на сервисеХостинг-среда элемент конфигурации.

и идеи ??

Ответы [ 3 ]

134 голосов
/ 18 июля 2012

В вашем web.config, в вашем элементе configuration \ system.serviceModel \ serviceHostingEnvironment, добавьте атрибут minFreeMemoryPercentageToActivateService и установите для него значение, меньшее 5, я установлю для 0 значение, и эта ошибка исчезла.

например:

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

Внимание через MSDN : «Указание этого атрибута вместе с частичным доверием в файле web.config службы WCF приведет к исключению SecurityException при запуске службы.»

14 голосов
/ 21 мая 2010

Одна вещь, которую вы можете попробовать, это изменить свой путь службы 'mex' на абсолютный, если это еще не так Это сработало для меня один раз. Но это могло произойти из-за перезапуска службы и освобождения некоторой памяти.

В ответе BrainSlug есть пример того, как это сделать

1 голос
/ 10 февраля 2015

Я столкнулся с этой проблемой при локальном запуске службы WCF (localhost). Я остановил службу. Закрыто несколько приложений для очистки моего барана. и перезапустил его снова. Началось нормально как раньше.
Ответ BrainSlug также работал. +1 за это. :)
Ура !!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...