Аудит производительности сайта на WordPress
Аудит производительности — диагностика узких мест перед началом оптимизации. Без аудита оптимизация — стрельба вслепую. Результат: конкретный список проблем с измеримым влиянием на скорость.
Инструменты измерения
Внешние (имитируют пользователя):
- Google PageSpeed Insights — оценка Core Web Vitals, рекомендации
- GTmetrix — водопад загрузки, filmstrip, регионы тестирования
- WebPageTest — детальный HAR, видео загрузки, тестирование с разных локаций
- Lighthouse CLI — запуск из командной строки для автоматизации
Внутренние (серверная сторона):
- Query Monitor — плагин, SQL-запросы, хуки, время PHP
- New Relic APM — профилировщик PHP
- Blackfire — детальное профилирование функций
Методология аудита
1. Измерить базовые метрики до оптимизации:
# Lighthouse CLI
npx lighthouse https://yourdomain.com \
--output json \
--output-path ./audit-before.json \
--chrome-flags="--headless"
# TTFB через curl
curl -o /dev/null -s -w "TTFB: %{time_starttransfer}s\nTotal: %{time_total}s\n" \
https://yourdomain.com
2. Анализ серверного времени (Query Monitor):
Установить Query Monitor, открыть любую страницу, проверить:
- Total query time (цель: < 50 мс)
- Number of queries (цель: < 30)
- Медленные запросы (> 5 мс каждый)
- Duplicate queries (одинаковый запрос несколько раз)
3. Анализ PHP:
# Включить slow log PHP-FPM
; /etc/php/8.3/fpm/pool.d/www.conf
slowlog = /var/log/php-fpm-slow.log
request_slowlog_timeout = 2s
4. Анализ MySQL:
-- Включить slow query log
SET GLOBAL slow_query_log = ON;
SET GLOBAL long_query_time = 0.5;
SET GLOBAL slow_query_log_file = '/var/log/mysql/slow.log';
-- Анализ через mysqldumpslow
mysqldumpslow -s t -t 10 /var/log/mysql/slow.log
Типичные находки и их вес
| Проблема | Влияние | Исправление |
|---|---|---|
| Нет OPcache | -40% PHP time | Включить в php.ini |
| Нет Redis/Memcached | -50-70% DB queries | Установить object cache |
| Нет кэша страниц | TTFB 500ms+ | WP Rocket / FastCGI cache |
| Неоптимизированные изображения | +2-5 MB на страницу | WebP + ресайз |
| Render-blocking JS | LCP +1-3 с | defer/async |
| Autoload options > 1 MB | +200ms на каждый запрос | Очистка wp_options |
| Медленный плагин | +300ms | Замена или оптимизация |
| Нет CDN | +500ms для удалённых пользователей | Cloudflare / BunnyCDN |
| HTTP/1.1 вместо HTTP/2 | Множественные RTT | Включить в Nginx |
| Нет gzip/brotli | +200-500 KB трафика | Включить в Nginx |
Анализ плагинов
# Профилирование плагинов через WP-CLI + Blackfire
wp plugin list --fields=name,status --format=csv | while IFS=, read name status; do
if [ "$status" = "active" ]; then
wp eval "
\$start = microtime(true);
do_action('init');
echo '$name: ' . round((microtime(true) - \$start) * 1000) . 'ms\n';
"
fi
done
Core Web Vitals: целевые значения
| Метрика | Хорошо | Нужна работа | Плохо |
|---|---|---|---|
| LCP (Largest Contentful Paint) | < 2.5 с | 2.5–4 с | > 4 с |
| INP (Interaction to Next Paint) | < 200 мс | 200–500 мс | > 500 мс |
| CLS (Cumulative Layout Shift) | < 0.1 | 0.1–0.25 | > 0.25 |
| TTFB | < 200 мс | 200–800 мс | > 800 мс |
Итог аудита
Аудит завершается документом с:
- Измеренными метриками (до)
- Перечнем проблем с приоритетами
- Конкретными рекомендациями по каждой
- Прогнозируемым результатом после исправления
Сроки
Аудит производительности WordPress-сайта с подготовкой отчёта и рекомендаций — 1–2 дня.







