Про производительность уже говорилось много, но всегда есть, что сказать. Сегодня хочу показать, как можно относительно просто отловить достаточно сложную проблему через профилирование. Этот пост является продолжением повествования о модуле bitrix.xdebug, где я обещал рассказать о профилировщике.
Положим, ваш сайт или корпоративный портал работает на хорошем железе, оценка производительности нормальная. Конфигурация сервера правильная (хорошо, если это наша виртуальная машина или rpm). Но какая-то страница или сайт в целом работает неудовлетворительно. Куда двигаться в такой ситуации?
Кто работал с каким-либо дебаггером кода, знает, как это бывает удобно для быстрой отладки: код можно выполнять построчно в поисках ошибки. PHP из коробки не имеет такой возможности, но можно поставить xdebug настроить GUI и получить тот же результат. На практике это хорошо работает для локальных скриптов, но настройка сильно усложняется когда скрипт работает на дальнем сервере. Когда речь идет о поддержке, то почти всегда приходится работать с дальним кодом. Мне давно хотелось решить эту проблему.