Когда POST'ing большой файл через ARR, запрос испытывает таймаут после 120 секунд. Клиент получает код ошибки 502 Bad Gateway
. Я настроил "тайм-аут прокси" веб-фермы, чтобы быть 600 секундами. Я также настроил Connection time-out
из Default Web Site
быть 600 секундами. Сервер ARR был перезапущен.
Следующее от файла журнала на сервере ARR:
2015-05-07 13:25:16 192.168.87.155 POST /Redacted/Import/RedactedImport20150507_152313.csv X-ARR-CACHE-HIT=0&X-ARR-LOG-ID=253daa4a-8372-405a-8efd-21ebbc38353f 80 - 192.168.87.198 - redacted.local 502 3 64 120436
от applicationHost.config:
<webFarm name="redacted.local" enabled="true">
<server address="redacted.local" enabled="true" />
<applicationRequestRouting>
<healthCheck url="http://redacted.local/redacted.svc" liveTrafficFailureCodes="400-" />
<protocol timeout="00:10:00" />
</applicationRequestRouting>
</webFarm>
Фон:
Я создаю PoC для использования ARR для достижения выравнивания нагрузки и высокой доступности для наших серверных служб, которые являются главным образом WCF (Основной HTTP) и REST.
Один из (REST) сервисы используется для получения большого (выход) файл пару раз каждый день от пакетного задания. ОСТАЛЬНОЕ, которое сервис не возвращает до обработки файла, завершено (который мог занять 5 минут), так как клиентское приложение должно знать, когда обработка завершена (больше шагов следует, которые зависят от первого).
Отвечая на свой вопрос, я, наконец, разобрался с этим.
Я добавил это в appHost.config
в разделе configuration/system. applicationHost
:
<webLimits connectionTimeout="00:10:00" minBytesPerSecond="0" />
Но даже после сохранения и нажатия кнопки Restart
под Manage Server
в Менеджере IIS Manager, он все равно ответил 502
через две минуты. Однако сегодня, когда я установил некоторые функции IIS (Failed Request Tracing), я перезапустил службу IIS W3SVC
и службу веб-менеджмента WMSvc
, и внезапно 502
остановился.[111677].
У нас была аналогичная проблема, которая была связана с настройкой MTU по умолчанию на сетевой карте, она была установлена на 1514 вместо 1500, что вызывало проблемы только с большими постами.
В моем случае я решил проблему, изменив прокси-сервер тайм-аут
Эти шаги относятся к IIS v7