Если вы действительно хотите протестировать реальный код, используйте такие инструменты, как Xdebug и XHProf .
Xdebug отлично подходит, когда вы работаете в dev / staging, а XHProf - отличный инструмент для производства, и запускать его там безопасно (если вы читаете инструкции). Результаты загрузки одной отдельной страницы не будут иметь такого значения, как просмотр того, как работает ваш код, в то время как сервер вынужден выполнять еще миллион других вещей, а ресурсы становятся дефицитными. Это поднимает другой вопрос: неужели у вас узкое место в ЦП? ОЗУ? I / O?
Вам также нужно смотреть не только на код, который вы запускаете в своих скриптах, но и на то, как обслуживаются ваши скрипты / страницы. Какой веб-сервер вы используете? В качестве примера я могу заставить nginx + PHP-FPM серьезно работать с mod_php + Apache, который, в свою очередь, не может обслуживать статический контент с использованием хорошего CDN.
Следующее, что нужно учитывать, - это то, для чего вы пытаетесь оптимизировать?
- Является ли скорость, с которой страница отображается в браузере пользователя, приоритетом номер один?
- Является ли целью получение каждого запроса к серверу как можно быстрее с минимальным потреблением ЦП?
Первому можно помочь, выполнив сжатие всех ресурсов, отправленных в браузер, но это может (в некоторых случаях) оттолкнуть вас от достижения последнего.
Надеюсь, все вышеперечисленное может помочь показать, что тщательно изолированное «лабораторное» тестирование не будет отражать переменные и проблемы, с которыми вы столкнетесь в производственной среде, и что вы должны определить свою цель высокого уровня и затем, что вы можете сделать для ее достижения. прежде чем отправиться к черту по пути микро / преждевременной оптимизации .