Урок 01

Введение в производительность

Зачем производительность

Что даёт:

  • Больше пользователей остаётся.
  • Выше конверсия.
  • Лучше 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×.

Правило: не ускорять всё — только узкое место.

Методика

Порядок оптимизации:

  1. Измерить — метрики.
  2. Найти bottleneck.
  3. Оптимизировать его.
  4. Измерить снова.
  5. Повторить.

Правило: не оптимизировать вслепую.

Инструменты

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.