Я использую следующий PHP-код для измерения времени выполнения скриптов PHP/MySQL.Производительность ответа HTTP падает при загрузке
$start = microtime(true);
/* any PHP with HTML output */
echo (microtime(true) - $start);
Это измерение всегда печатает аналогичный результат независимо от нагрузки на сервер. Время выполнения обычно составляет 0,1 секунды на разных страницах, полностью не зависящих от нагрузки на сервер.
Но когда сервер находится под некоторой нагрузкой (100 одновременных пользователей), каждая страница занимает несколько секунд, чтобы физически отображаться в браузере. Из этого наблюдения я предполагаю, что HTTP-сервер страдает от снижения производительности?
Где я должен исправить эту проблему?
Распространять нагрузку? Профилируйте свой код? Проверьте свои индексы DB/медленные запросы? О, так много разных ответов. –
@ jonstirling Я сомневаюсь, что это имеет какое-либо отношение к PHP или базе данных, потому что время выполнения всегда остается низким. Он ведет себя так, как будто передача HTTP-данных клиенту заняла некоторое время. Может быть проблема с низкой пропускной способностью? – ahojvole
Не может быть? Конечно, наряду с длинным списком других вещей. Не глядя на то, что замедляется, вы действительно не знаете, что происходит. –