Я использую веб-сервер apache на debian 6.0 с ядром 2.6.32-5-amd64.
В определенное время дня, обычно когда в сети больше людей, сервер отвечает очень медленно. Я уверен, что это не загрузка, это не БД, это не PHP, по этой команде:
time wget 127.0.0.1
довольно медленно:
--2013-09-20 15:36:49-- http://127.0.0.1/
Connecting to 127.0.0.1:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2013-09-20 15:36:52 ERROR 404: Not Found.
real 0m2.663s
user 0m0.004s
sys 0m0.004s
Время отклика до 5 сек. Точка ожидания - после того, как «HTTP-запрос отправлен, ожидает ответа ...». Генерация страницы после этого лага, общего для всех HTTP-запросов, выполняется быстро, например, 50 мс.
Я тестировал свой Интернет, используя http://tools.pingdom.com/fpt/, первый ответ всегда медленный, большая часть контента загружается также медленно, но некоторые из них довольно быстрые, но я не могу сказать, есть ли у этого инструмента какой-то кеш.
telnet 127.0.0.1 80
быстро, ответ покажет без промедления:
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
Где может быть проблема? Это должно быть что-то до того, как запрос отправится в apache.
Расскажите, пожалуйста, хотя бы о некоторых инструментах для отладки для этого.
Я не думаю, что 2,6 секунды - это ужасно медленно для вашего среднего сайта, который не был создан командой штатных инженеров (см. Google.com).
Вероятно, ваша проблема заключается в вводе-выводе, будь то сеть, диск, память или т.
Вам нужно будет проследить стек приложения. Это включало изучение программного обеспечения вашего веб-сервера (apache httpd, ngnix и т. Д.), Стека php, кода php и любых механизмов внутреннего хранилища, таких как файловые системы и MySQL, которые поддерживают стек.
Задержка может быть вызвана медленным диском, неиндексированным запросом mysql, узким местом в сети или даже оптимизированным циклом или функцией в коде. Я не думаю, что мы сможем вам в этом сильно помочь, если вы не предоставите подробную информацию о своей среде и не зададите конкретные вопросы.