Скрыть объявление

Внимание!


Наш телеграм-канал попал под массовую блокировку и, пока мы подготовили для вас резервный!


Подписывайтесь по этой ССЫЛКЕ

Скрыть объявление

На короткое время рассказываем где достать редкие курсы

Подробности ТУТ

Скрыть объявление

Мы обновили Telegram-бот!

Ссылку на новый бот и все детали ищите ТУТ и скорее подписывайтесь, чтобы не пропускать важные уведомления и новости форума

Скрыть объявление

Было ли у Вас такое, что Вы не могли найти курс? Если да, то напишите нам в Службу поддержки какой курс вам нужен и мы постараемся его найти.

Скрыть объявление

Пополняйте баланс и получайте при оплате складчин кэшбек в размере 10%

Доступно

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

Тема в разделе "Курсы по программированию"

Цена:
3000 руб
Взнос:
252 руб
Организатор:
Организатор

Список участников складчины:

1. Организатор
Купить
  1. Организатор Организатор складчин

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

    [​IMG]

    На прошлом стриме мы с вами разобрались с разделением кода на модули и микросервисы. Пока записываются и монтируются скринкасты проведём наш очередной стрим на полезные смежные темы. В этот раз поговорим про способы оптимизации запуска и работы 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 - Ответы на вопросы

    Скрытый текст. Доступен только зарегистрированным пользователям.Нажмите, чтобы раскрыть...
     
  2. Похожие складчины
    Загрузка...
Наверх