Всем привет!
Я Павел Мурзаков, тимлид серверной команды Badoo. Мы обожаем PHP, вкладываемся в его развитие и развитие сообщества вокруг него. 21 сентября планируем провести третий Badoo PHP Meetup. Приглашаем спикеров и гостей!
В этот раз в качестве общей темы встречи выбрали производительность PHP-кода и PHP-бэкенда в целом. Для нас эта область важна, так как, с одной стороны, у нас большая инфраструктура на PHP, и вопрос производительности — это вопрос экономии денег. С другой — нам важно предоставлять пользователям сервис высокого качества, поэтому бэкенд должен отвечать достаточно быстро, ведь от этого зависит активность пользователей и их впечатления от сервиса.
На митапе хотим обсудить, как решают подобные вопросы в разных компаниях, а именно: как следить за производительностью, профилировать и локализовывать проблемы, когда и что стоит оптимизировать и как это делать.
Регистрация по ссылке, начало в 12:00, гостей встречаем с 11:00.
Программа
Павел Мурзаков, 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 ещё больше.
Антон Шабовта zloyusr, энтузиаст асинхронного PHP
«Когда производительности PHP-кода не хватает: пишем С драйвер для PHP + RoadRunner»
Основные тезисы:
- RoadRunner: протокол и особенности реализации
- PHP + Go — это быстро, надо ли еще оптимизировать?
- Реализация клиентского кода на С: с чего начать и когда вообще стоит переносить что-то в PHP-extension?
- Сравнение производительности PHP-FPM, RoadRunner и RoadRunner + C.
- Бонус: а если асинхронно? :)
Место спикера свободно!
Если вам есть что рассказать о производительности PHP-бэкенда — пишите мне на Хабрапочту pmurzakov
Адрес: Москва, Цветной бульвар, д.2, подъезд А, Cafetera (1 этаж)
Начало докладов в 12:00.
Встречать гостей начнем в 11:00, приходите выпить кофе перед началом и занять места получше!
В перерывах можно будет посмотреть офис Badoo, после митапа — афтепати для желающих.
Пожалуйста, при регистрации указывайте свои имена и фамилии, как в паспорте (на русском языке). Для пропуска в БЦ захватите с собой документ, удостоверяющий личность.
Количество мест ограничено, обязательно дождитесь подтверждения регистрации (придет за пару недель до митапа).
Трансляция будет на нашем YouTube-канале, анонсы будут в группах VK и FB. Записи опубликуем там же и в блоге на Habr.
Присоединяйтесь к чату митапа, там регулярно бывают интересные обсуждения!
Автор: pmurzakov