У меня есть приложение ASP.NET WebApi2, размещенное в IIS (в облачной службе Azure, если это имеет значение здесь). Я установил глобальное время ожидания запроса в web.config
:
<system.web>
<compilation targetFramework="4.6.2" />
<httpRuntime targetFramework="4.5" executionTimeout="60" />
...
</system.web>
Тем не менее, когда я смотрю на текущие запросы рабочего процесса в IIS Manager, я вижу много запросов, работающих (зависших) в течение нескольких часов:
![long running requests in IIS worker process](https://i.stack.imgur.com/OYjKB.png)
Как это может быть?
И да, я знаю, что устраню основную причину, по которой некоторые запросы зависают, но я думал, что тайм-аут является хорошим отказоустойчивым - но если запросы никогда не останавливаются, они в конечном итоге пожирают некоторую очередь, и приложение начинает возвращать 503 с.
Приложение находится в режиме Release, работает на удаленном сервере (не на localhost).