В этот раз в качестве общей темы встречи выбрали производительность PHP-кода и PHP-бекенда в целом. Для нас эта область важна т.к., с одной стороны, у нас большая инфраструктура на PHP, и вопрос производительности — это вопрос экономии денег. С другой — нам важно предоставлять пользователям сервис высокого качества, поэтому бекенд должен отвечать достаточно быстро, ведь от этого зависит активность пользователей и их впечатления от сервиса.
На митапе хотим обсудить, как решают подобные вопросы в разных компаниях, а именно: как следить за производительностью, профилировать и локализовывать проблемы, когда и что стоит оптимизировать и как это делать.
Регистрация по ссылке, ССЫЛКА Начало в 12:00, гостей встречаем с 11:00.
Александр Малащицкий, ведущий разработчик команды «Платформа» (Superjob)
"Систематизация оптимизации"
Александр поделится опытом покрытия метриками нагруженного приложения и развития системного подхода в поиске проблемных мест и их оптимизации.
Основные тезисы:
Павел Мурзаков, PHP Team Lead (Badoo)
“Боремся с shared-nothing моделью: PHP 7.4 preload, RoadRunner и другие”
Традиционное PHP-приложение (т.е. mod_php, php-fpm и т.п.) каждый раз исполняет весь код с нуля. Это значит, что весь bootstrap приложения происходит заново на каждый запрос: инициализация окружения, подключение необходимых файлов, сборка DI-контейнеров, загрузка конфигов и прочее. Всё это одинаково для каждого запроса, и могло быть сделано один раз, но PHP приходится постоянно повторять эти действия. Поэтому, даже если бизнес-логика достаточно оптимизирована, мы всё равно будем тратить ресурсы впустую на инициализацию.
В докладе поговорим, как можно решить или минимизировать эту проблему:
Разберёмся, на что именно тратятся ресурсы, посмотрим в perf и исходники PHP
Поищем какие-то простые решения проблемы: как мы можем делать меньше инициализаций или сохранить данные между запросами.
Опробуем новые достижения PHP-сообщества — PHP 7.4 preload и RoadRunner — и сравним их.
Разберёмся, зачем нужен PHP 7.4 preload, если уже есть opcache, и как выжать из RoadRunner ещё больше.
Антон Шабовта, энтузиаст асинхронного PHP (Onliner)
"Когда производительности PHP-кода не хватает: пишем С драйвер для PHP + RoadRunner"
Основные тезисы:
RoadRunner: протокол и особенности реализации
PHP + Go — это быстро, надо ли еще оптимизировать?
Реализация клиентского кода на С: с чего начать и когда вообще стоит переносить что-то в PHP-extension?
Сравнение производительности PHP-FPM, RoadRunner и RoadRunner + C
Бонус: а если асинхронно?☺
Панельная дискуссия о производительности
Участники:
Павел Мурзаков, Badoo
Семён Катаев, Avito
Михаил Буйлов (Mamba)
Адрес: Москва, Цветной бульвар, д.2, подъезд А, Cafetera (1 этаж)
Начало докладов в 12:00.
Встречать гостей начнем в 11:00, приходите выпить кофе перед началом и занять места получше!
В перерывах можно будет посмотреть офис Badoo, после митапа — афтепати для желающих.
Пожалуйста, при регистрации указывайте свои имена и фамилии, как в паспорте (на русском языке). Для пропуска в БЦ захватите с собой документ, удостоверяющий личность.
Количество мест ограничено, обязательно дождитесь подтверждения регистрации (придет за пару недель до митапа).
Трансляция будет на нашем YouTube-канале, анонсы будут в группах VK и FB. Записи опубликуем там же и в блоге на Habr.
Присоединяйтесь к чату митапа, там регулярно бывают интересные обсуждения!
Напоминаем, что для того чтобы восстановить билет организатору можно не писать.
Если вы хотите вернуть билеты, вы можете сделать это по ссылке из письма с билетами или оформить запрос организатору в вашем  личном кабинете.