У меня есть IIS ARR / веб-ферма, использующая функцию проверки работоспособности (проверка работоспособности). Настройки теста - проверять данный URL каждые 30 секунд. Он проверяет каждые 30 секунд, но при каждой проверке отправляет сотни запросов.
Кто-нибудь видел это раньше? Вы знаете, как это предотвратить?
Конфигурация веб-фермы:
<webFarm name="wf_site.at.your.domain_webservices_crosscampusenrollment" enabled="true">
<server address="site1.at.your.domain" enabled="true" />
<server address="site2.at.your.domain" enabled="true" />
<applicationRequestRouting>
<protocol timeout="00:00:30" reverseRewriteHostInResponseHeaders="false">
<cache enabled="false" queryStringHandling="Accept" />
</protocol>
<affinity useCookie="true" cookieName="ARRAffinity_site.at.your.domain_webservices_crosscampusenrollment" />
<loadBalancing algorithm="WeightedRoundRobin" />
<healthCheck url="http://site.at.your.domain/webservices/CrossCampusEnrollment/healthcheck" />
</applicationRequestRouting>
</webFarm>
Вот суть журнала IIS.
Информация о сервере:
Windows Server 2012 R2 Standard - Build 9200
IIS 8.5 - 8.5.9600.16384
URL Rewrite Module 2 - 7.2.2
ARR 3.0 - 3.0.1750
WFF - 1.1.1292
В соответствии с этот комментарий в блоге Скотта Форсайта, это может произойти, если у вас есть веб-ферма на сервере с несколькими пулами приложений:
Проблема в том, что ARR не имеет специального рабочего процесса для тестирования работоспособности, поэтому он просто использует ВСЕ рабочие процессы w3wp.exe. Это означает, что если у вас есть несколько пулов приложений или веб-сад, то у вас будет довольно безумная схема тестирования работоспособности.
Единственный способ устранить это - уменьшить количество пулов приложений и / или рабочих процессов.