2
Андрей «Rarst» Савченко — Rarst.net ♦ WPSE ( s.tk/wp ) — QueryPosts.com — Composer.Rarst.net — Команда Yoast.com
Slide 3
200мс граница интерактивности
Slide 4
цель №1 детализация 10мс
Slide 5
5
Интернет Вам врёт 1. Включить расширение для профилирования… 2. Загрузить страницу… 3. Найти созданный файл профиля… 4. Запустить просмотрщик… 5. Загрузить профиль в просмотрщик…
Нет.
Slide 6
цель №2 0..2 кликов
Slide 7
7
Простая установка, мало подробностей — легко установить — минимальные требования — в основном итоговая информация
Slide 8
8
var_dump() профилирования printf( '%d queries in %.3f seconds, using %.2fMB memory', get_num_queries(), timer_stop( 0, 3 ), memory_get_peak_usage() / 1024 / 1024 ); // 3 queries in 0.251 seconds, using 4.42MB memory
Slide 9
9
Symfony Stopwatch $stopwatch = new Stopwatch(); $stopwatch->start( 'eventName' ); // some code goes here $event = $stopwatch->stop( 'eventName' ); echo $event->getDuration(); // 202 echo $event->getMemory(); // 3670016
symfony.com/doc/current/components/stopwatch
Slide 10
Laps — основные стадии загрузки — запросы к базе данных — HTTP запросы github.com/Rarst/laps
Slide 11
11
Сложная установка, много подробностей — (относительно) сложно установить — требуется бинарный PHP модуль — очень подробная информация
Slide 12
12
XHProf / uprofiler — открытое ПО — легкая нагрузка — lingua franca формат github.com/FriendsOfPHP/uprofiler