Выключение пулов приложений IIS7 при размещении служб WCF с помощью net.tcp
Я размещаю службы WCF в IIS 7/WAS на Windows Server 2008, используя привязки http и net.tcp.
Я могу вызывать сервисы с http и net.tcp без проблем большую часть времени, но иногда пул приложений сервисов неожиданно отключается. Когда это происходит, WAS записывает следующие записи в журнал событий:
Рабочий процесс для пула приложений "MyServices" обнаружил ошибку "при попытке чтения данных конфигурации из файла" \?\C:\Windows\Microsoft.NET\Framework64\v4.0.30319\CONFIG\web.config', номер строки' 0'. Поле данных содержит код ошибки. (Данные: 00000008)
Процесс, обслуживающий пул приложений "MyServices", сообщил об ошибке при попытке чтения конфигурации во время запуска. Идентификатор процесса был "18196". Пожалуйста, проверьте Журнал событий приложений для дальнейших сообщений о событиях, зарегистрированных рабочим процессом при определенной ошибке. Поле данных содержит номер ошибки. (Данные: 80004005)
Канал прослушивателя для протокола "net.tcp" в рабочем процессе "18468", обслуживающий пул приложений "MyServices", сообщил об ошибке канала прослушивателя. Поле данных содержит номер ошибки. (Данные: 80004005)
Пул приложений "MyServices" автоматически отключается из-за серии сбоев в процессе (ах), обслуживающем этот пул приложений.
Я подтвердил, что пул приложений настроен на использование.NET v4.0, интегрированный режим с отключенными 32-разрядными приложениями. Сервисы не используют 32-битные или неуправляемые компоненты.
Вызовы, приводящие к завершению работы, являются вызовами net.tcp, в одной записи журнала приложения упоминается "канал прослушивания для протокола" net.tcp "", а net.tcp встречается гораздо реже, чем http (я не нашел ничего подходящего для поиска в Google). любой из записей журнала приложения). Я не могу не думать, что проблема связана с net.tcp, совместным использованием портов и т. Д. Я просто понятия не имею, в чем проблема.
Кто-нибудь сталкивался с этим раньше? У кого-нибудь есть мысли о том, как устранить проблему, помимо простого отключения net.tcp и использования исключительно http?