Веб-сервис в IIS размещен как приложение, владеющее пулом приложений. Обычно эти пулы настроены на повторное использование себя через регулярные интервалы - например, эта служба будет перезапущена.
В настройках пула приложений (внутри inetmgr-консоли) можно дезактивировать эти рециркуляции (в разделе «Дополнительные настройки» -> «Конфигурация рециркуляции»).
О сбое восстановления существует возможность настроить их также в этих настройках, но я не уверен, действительно ли они делают то, что вы ожидаете от них.
Наконец, я предлагаю вам просто разместить ваши услуги с помощью приложения-хостера вне IIS в качестве системного сервиса, который затем может быть настроен на автоматический перезапуск, а также создать запись в журнале. Обычно WCF-сервис не предназначен для того, чтобы быть дольше, чем требуется. В одном из наших проектов мы точно это сделали после распознавания проблем с IIS, и это сделало нашу работу проще ...
Почему? Что ты пытаешься сделать? – SLaks
Я пытаюсь иметь дело с искалеченной архитектурой, которая обременяет меня странными требованиями. – mafu
Возможно, вы должны создать обычный сервис. – SLaks