У меня есть веб-сайт IIS, который обслуживает контент через Apache (ProxyPass и ProxyPassReverse - причина такой странной конфигурации историческая). Apache находится за прокси-серверами других компаний. На сайте есть статические файлы и один виртуальный каталог для части WebAPI, обслуживающей JSON.
Пользователи иногда получают неправильный контент - например, посещение домашней страницы возвращает изображение, на которое есть ссылка на домашней странице, или какая-либо другая html-страница на сайте, или некоторый JSON (из WebAPI). На домашней странице отключено кеширование.
Обычно это происходит, когда сервер находится в состоянии нагрузки (база данных зависает), но бывает и в другом случае (но редко), но с недостаточной частотой или последовательностью, чтобы мы могли отлаживать.
IIS: версия 6.1
Apache: версия 2.2.13
Что может быть причиной этой периодически возникающей проблемы или есть хороший способ выяснить, что происходит?
Возможно, страница с «ошибкой» перенаправляется на домашнюю страницу. Или просто отображение домашней страницы. Это также объясняет, почему эта проблема проявляется при высокой нагрузке на сервер. Я бы проверил конфигурацию IIS для этого.
Вот как я бы отладил проблему в общем виде.
Я бы попытался изолировать проблему. Для этого я бы записал трафик по следующим путям:
Тогда я проверю, что случилось. И попробуйте сопоставить запрос и ответы. Вы можете записывать трафик любым сетевым сниффером и анализировать его с помощью Wireshark. Вы также можете записывать трафик с управляемого коммутатора, используя SPAN или RSPAN.
Тогда я бы попытался воспроизвести проблему. Вы можете клонировать машины и протестировать клон с помощью программного обеспечения для нагрузочного тестирования, например JMeter. Проверьте журнал ошибок веб-серверов. Попытайтесь выяснить, каких пределов вы достигаете. Может быть ограничение пула соединений, таймауты ...