[Дмитрий Елисеев] [deworker.pro] Способы ускорения PHP-приложений (2024)

р.500

Способы ускорения PHP-приложений [deworker.pro] [Дмитрий Елисеев] На прошлом стриме мы с вами разобрались с разделением кода на модули и микросервисы.

Категория:
Если вы сомневаетесь в нашей честности, то напишите нам по контактам на сайте. по ссылке: https://unimys.com/obratnaya-svyaz/
Любой товар стоит от 150 до 500 рублей (цена не зависит от стоимость продажи у автора)
  • После оплаты вы сразу же получаете курсы на e-mail;
  • Низкая цена;
  • Легко оплатить (мы используем все популярные платежные системы).

Если вы оплатили продукт, и он не пришел вам на почту в течение 30 минут, то свяжитесь с нами по ссылке: https://unimys.com/zakaz-ne-prishel/

Описание

Способы ускорения PHP-приложений [deworker.pro] [Дмитрий Елисеев]

На прошлом стриме мы с вами разобрались с разделением кода на модули и микросервисы.
Пока записываются и монтируются скринкасты проведём наш очередной стрим на полезные смежные темы.
В этот раз поговорим про способы оптимизации запуска и работы PHP-приложений:
Рассмотрим подходы к ускорению работы веб-приложения. От простого включения OpCache, кеширования конфигурации и ленивой инициализации сервисов до Preload с JIT и RoadRunner, асинхронности, использования Fiber-ов и других нюансов в разных фреймворках. Потренируемся на проектах с бэнчмарками.
Поговорим про возможные проблемы, удобство программирования stateless-сервисов и про передачу контекста запроса.

UPD: Провели первую часть, где показали оптимизацию запуска существующих классических приложений на Slim и Symfony.

Содержание:

  • 00:00:00 – Приветствие
  • 00:00:53 – Вопросы в чате
  • 00:06:18 – Как работает проект и что мы можем ускорить
  • 00:31:07 – Демо-приложение на SlimPHP
  • 00:41:36 – Сервис Benchmark для замеров
  • 00:46:30 – Замеры производительности без оптимизаций
  • 00:49:28 – Случай из жизни
  • 00:52:26 – Кэширования опкодов с OpCache
  • 01:01:14 – Компиляция по требованию с JIT
  • 01:07:22 – Ручной прогрев OpCache через Preload
  • 01:24:34 – Где может пригодиться JIT
  • 01:30:23 – Кэширование конфигурации приложения
  • 01:53:57 – Долгоживущие приложения
  • 02:03:38 – Переход с PHP-FPM на RoadRunner
  • 03:07:48 – Демо-приложение на Symfony
  • 03:19:24 – OpCache и готовый Preload
  • 03:23:22 – Подключение RoadRunner к Symfony
  • 03:33:50 – Для Laravel и других фреймворков
  • 03:37:43 – Обзор результата и нюансы
  • 03:43:50 – Ответы на вопросы

И во второй части написали свой асинхронный Loop с таймером на PHP как на JavaScript и показали способы написания новых приложений на асинхронных фреймворках:

  • 00:00:00 – Приветствие
  • 00:01:29 – Про митап с докладом про асинхронность
  • 00:10:58 – Синхронная природа воркеров RoadRunner
  • 00:19:36 – Неудобства от Doctrine с EntityManager
  • 00:26:30 – Пересоздание EntityManager при ошибках
  • 00:40:18 – Сравнение PHP и Java по типизации с Go и TypeScript
  • 01:09:06 – Как устроен waitRequest в RoadRunner
  • 01:23:19 – Пишем Loop для отложенного выполнения кода
  • 01:47:04 – Пишем setTimeout на PHP
  • 02:10:35 – Блокирующий и неблокирующий код
  • 02:15:58 – Неблокирующая загрузка fetch по HTTP
  • 02:34:17 – EventLoop в JavaScript
  • 02:46:30 – Конкурентное и асинхронное выполнение
  • 02:52:56 – Объект Promise и ожидание результата через await
  • 03:11:03 – Ожидание группы через Promise::all
  • 03:13:32 – Идея генераторов с yield
  • 03:20:27 – Концепция зелёных потоков и Fiber
  • 04:00:10 – Практическая польза неблокирующего режима
  • 04:10:56 – Асинхронный сервер AmPHP
  • 04:24:35 – OpCache для консольных приложений
  • 04:25:20 – Скелет демонстрационного приложения
  • 04:29:06 – Работа с системными сигналами в Docker
  • 04:35:09 – Написание проекта на AmPHP HTTP Server
  • 04:40:09 – Использование Connection Pool для БД
  • 04:47:42 – Установка pcntl для работы с сигналами
  • 04:49:27 – Код приложения и тест производительности
  • 05:14:59 – Асинхронная инфраструктура ReactPHP
  • 05:19:25 – Отлов ошибок в Promise и await
  • 05:23:33 – Написание проекта на ReactPHP
  • 05:49:52 – Инфраструктура Swoole и OpenSwoole
  • 06:00:05 – Написание проекта на OpenSwoole
  • 06:26:45 – Проблема состояния и Statefull-сервисов
  • 06:40:04 – Stateless-сервисы и передача параметров запроса
  • 06:50:30 – Структура для описания контекста запроса
  • 07:05:58 – Использование ORM при кооперативном выполнении
  • 07:14:33 – Ответы на вопросы

 

Отзывы

Отзывов пока нет.

Будьте первым, кто оставил отзыв на “[Дмитрий Елисеев] [deworker.pro] Способы ускорения PHP-приложений (2024)”

Ваш адрес email не будет опубликован. Обязательные поля помечены *