Мы запускаем сервер Apache 2.2 для очень большого веб-сайта. За последние несколько месяцев у нас были некоторые пользователи, сообщающие о медленном времени отклика, в то время как другие (включая наши ресурсы как во внутренней сети, так и в наших домашних сетях) не видели никакого снижения производительности.
После тонны исследований мы наконец нашли в нашей конфигурации выражение «Запретить ни с кого», которое вызывало обратный поиск DNS (время ожидания истекло), что решило большую часть наших проблем, но у нас все еще есть некоторые клиенты, которых мы видим. журналы Apache (с использованием% D в формате журнала) со временем обработки запросов> 300 с для изображений, CSS, javascript и другого статического содержимого.
Мы проверили все операторы Deny / Allow на предмет повторного появления «none», а также все другие известные нам вещи, которые могут вызвать обратный поиск DNS (например, использование «REMOTE_HOST» в правилах перезаписи с использованием% a вместо% h в наша конфигурация формата журнала), а также проверили, что HostnameLookups имеет значение "Off".
Кроме того, мы также подтвердили, что обратный поиск DNS для людей, у которых есть эта проблема, не истекает, поэтому я уверен, что DNS в этом случае не является проблемой.
У меня закончились идеи. Существуют ли какие-либо сценарии конфигурации Apache, которые кто-то может указать мне, которые мне могут не хватать, из-за которых время запроса статического содержимого будет длиться так долго только для определенных пользователей?
Заранее спасибо.
Когда я нахожу такие вещи, я сначала проверяю:
tcpdump
или wireshark
чтобы проверить это, а не просто взглянуть на файл конфигурации. Если вы уверены, что проблема не в этом,Обратите внимание, что время отклика 300 с, вероятно, означает, что Apache отказался от них, а не то, что он был обслужен. 5 минут - это очень долгое время для ожидания сервера, но еще более безумно для клиента ждать так долго.