У меня есть рабочий виртуальный веб-сервер, который переносится на новый виртуальный веб-сервер в той же локальной сети. Проблема в том, что на новом сервере есть проблемы с производительностью.
Например, есть одна страница, которая загружается примерно за 1 секунду на исходном сервере, но на новом загружается более 25 секунд. Я уже исключил соединение с базой данных как проблему.
Оба сервера являются серверами Ubuntu Apache, работающими на PHP. Существуют небольшие различия в версиях серверов, я перечислю их как можно лучше здесь.
Мой главный вопрос: есть ли общий способ для профилирования веб-запросов на каждом сервере?
Подобно тому, как я могу профилировать скрипт или функцию на python и получить подробное описание того, какие части программы занимают больше всего времени, я хотел бы профилировать веб-запросы на одном сервере по сравнению с другим.
Конечно, веб-запросы к серверу принципиально отличаются от программ, запускаемых на локальном компьютере, но мне нужно найти узкое место. Любая помощь с благодарностью.
Конфигурация старого сервера
Ubuntu 14.04 — версия PHP 5.5.9
Конфигурация нового сервера
Ubuntu 16.04 — версия PHP 5.6.31 (также протестирована с версией 7, тот же результат)
Я бы предложил регистрировать время выполнения PHP-скрипта.
Если это происходит из-за выполнения PHP, вы легко заметите это.
Сделайте журнал в начале и один в конце. Затем вы можете стресс-тестировать оба и увидеть разное время выполнения.
Я серьезно сомневаюсь, что проблема исходит от PHP, но если вы сделаете это, вы также можете увидеть различия с PHP7, который должен быть на 30% быстрее.
Других решений пока нет …