Введение в производительность
Зачем производительность
Что даёт:
- Больше пользователей остаётся.
- Выше конверсия.
- Лучше SEO (CWV).
- Меньше затрат на серверы.
- Выше доверие к бренду.
Что теряешь:
- 53% уходят с сайта, если загрузка > 3 сек.
- 1 сек задержки = -7% конверсии.
- Amazon: +100 мс = +1% выручки.
Правило: производительность = деньги.
Что такое производительность
Это не одно число, а набор метрик.
Три аспекта:
- Скорость загрузки — как быстро видно контент.
- Отзывчивость — как быстро реагирует.
- Стабильность — как ведёт себя layout.
Правило: важно всё вместе.
Frontend vs Backend
Frontend:
- Загрузка ресурсов.
- Рендеринг страницы.
- Интерактивность.
- CWV — метрики.
Backend:
- Время ответа.
- БД запросы.
- Очереди.
- Кеш.
Правило: ускорение backend бесполезно, если frontend медленный.
Ключевые метрики
Frontend:
- LCP — Largest Contentful Paint.
- INP — Interaction to Next Paint.
- CLS — Cumulative Layout Shift.
- FCP — First Contentful Paint.
- TTFB — Time to First Byte.
Backend:
- Response time.
- Throughput — запросов/сек.
- Error rate.
- Queue size.
- DB query time.
Правило: метрики — основа оптимизации.
Latency — задержка
Что это: время от запроса до ответа.
Единицы:
- 1 мс — отлично.
- 10 мс — хорошо.
- 100 мс — приемлемо.
- 1 сек — плохо.
- 10 сек — критично.
Правило: каждые 100 мс имеют значение.
Bottleneck
Что это: узкое место — самая медленная часть.
Примеры:
- Медленный SQL-запрос.
- N+1 проблема.
- Большая картинка.
- Синхронный HTTP-вызов.
- Блокирующий PHP.
Правило: сначала находишь bottleneck, потом оптимизируешь.
Правило Амдала
Что говорит: ускорение системы ограничено самой медленной частью.
Пример:
- 70% времени — БД.
- Ускорил БД в 10 раз → общее ускорение только 2.7×.
Правило: не ускорять всё — только узкое место.
Методика
Порядок оптимизации:
- Измерить — метрики.
- Найти bottleneck.
- Оптимизировать его.
- Измерить снова.
- Повторить.
Правило: не оптимизировать вслепую.
Инструменты
Frontend:
- Lighthouse.
- PageSpeed Insights.
- WebPageTest.
- DevTools Performance.
Backend:
- Laravel Pulse.
- Laravel Telescope.
- Xdebug.
- Blackfire.
- New Relic.
Оба:
- Sentry.
- Grafana + Prometheus.
- MCP-серверы для AI.
Что важно в 2026
- Core Web Vitals — обязательны.
- AI-инструменты — ускоряют анализ.
- Edge CDN — для статики.
- PHP 8.5 + JIT — встроенные оптимизации.
- Laravel Octane — для высоких нагрузок.
- Swoole / RoadRunner.
С чего начать
Чек-лист:
- Прогнать Lighthouse.
- Проверить PageSpeed Insights.
- Установить Laravel Pulse.
- Настроить Sentry.
- Собрать baseline метрик.
- Найти 5 медленных запросов.
- Записать план.
Практика
1. Прогоните свой сайт через PageSpeed Insights.
2. Запишите CWV.
3. Откройте Laravel Pulse — есть?
4. Найдите 5 самых медленных страниц.
5. Определите, что тормозит — frontend или backend.
6. Составьте список задач.
7. Замерьте baseline.
Частые ошибки
1. Оптимизировать без замеров:
Кажется медленным
Решение: сначала метрики.
2. Оптимизировать всё:
Много работы, мало результата
Решение: только bottleneck.
3. Только backend:
Frontend тормозит
Решение: оба.
4. Только frontend:
API ждёт 3 сек
Решение: оба.
5. Разовая оптимизация:
Откатывается
Решение: мониторинг.
6. Игнорировать CWV:
SEO страдает
Решение: смотреть.
7. Без baseline:
Не видно результата
Решение: замерять до.
8. Без приоритетов:
Работа в стол
Решение: по влиянию.
Итог
- Производительность = деньги.
- 3 аспекта: скорость, отзывчивость, стабильность.
- Frontend + backend.
- Метрики: CWV, response time.
- Bottleneck — сначала.
- Правило Амдала.
- Измерить → найти → оптимизировать.
- Инструменты: Lighthouse, Pulse, Sentry.
- Мониторинг — постоянно.
Дальше — Core Web Vitals: LCP, INP, CLS.