Pull to refresh

21 сентября Badoo PHP Meetup #3: производительность

Reading time3 min
Views6.1K
Всем привет!

Я Павел Мурзаков, тимлид серверной команды Badoo. Мы обожаем PHP, вкладываемся в его развитие и развитие сообщества вокруг него. 21 сентября планируем провести третий Badoo PHP Meetup. Приглашаем спикеров и гостей!

В этот раз в качестве общей темы встречи выбрали производительность PHP-кода и PHP-бэкенда в целом. Для нас эта область важна, так как, с одной стороны, у нас большая инфраструктура на PHP, и вопрос производительности — это вопрос экономии денег.  С другой — нам важно предоставлять пользователям сервис высокого качества, поэтому бэкенд должен отвечать достаточно быстро, ведь от этого зависит активность пользователей и их впечатления от сервиса.

На митапе хотим обсудить, как решают подобные вопросы в разных компаниях, а именно: как следить за производительностью, профилировать и локализовывать проблемы, когда и что стоит оптимизировать и как это делать.

Регистрация по ссылке, начало в 12:00, гостей встречаем с 11:00. 

Программа


Александр Малащицкий, ведущий разработчик команды «Платформа» (Superjob)


Систематизация оптимизации


Александр поделится опытом покрытия метриками нагруженного приложения и развития системного подхода в поиске проблемных мест и их оптимизации. Основные тезисы:

  • Чем плоха оптимизация без метрик, и почему Blackfire — не панацея;
  • С каких метрик начала команда, как их хранит и как чуть не утонула в их количестве;
  • К какому набору метрик пришли, и как он помогает находить проблемные места;
  • Как в Superjob используют PHPSpy для снятия профайлинга с продакшена, и почему профайлинг — ещё одна метрика;
  • Как сделать оптимизацию частью жизненного цикла разработки.

Павел Мурзаков, 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 (Onliner)


«Когда производительности PHP-кода не хватает: пишем С драйвер для PHP + RoadRunner»


Основные тезисы:

  • RoadRunner: протокол и особенности реализации
  • PHP + Go — это быстро, надо ли еще оптимизировать?
  • Реализация клиентского кода на С: с чего начать и когда вообще стоит переносить что-то в PHP-extension?
  • Сравнение производительности PHP-FPM, RoadRunner и RoadRunner + C.
  • Бонус: а если асинхронно? :)

Панельная дискуссия о производительности


Участники:
Павел Мурзаков, Badoo pmurzakov
Семён Катаев, Avito
Михаил Буйлов (Mamba)



Адрес: Москва, Цветной бульвар, д.2, подъезд А, Cafetera (1 этаж)
Начало докладов в 12:00.
 
Встречать гостей начнем в 11:00, приходите выпить кофе перед началом и занять места получше!
 
В перерывах можно будет посмотреть офис Badoo, после митапа — афтепати для желающих. 

Пожалуйста, при регистрации указывайте свои имена и фамилии, как в паспорте (на русском языке). Для пропуска в БЦ захватите с собой документ, удостоверяющий личность. 
 
Количество мест ограничено, обязательно дождитесь подтверждения регистрации (придет за пару недель до митапа). 

Трансляция будет на нашем YouTube-канале, анонсы будут в группах VK и FB. Записи опубликуем там же и в блоге на Habr.

Присоединяйтесь к чату митапа, там регулярно бывают интересные обсуждения!
Tags:
Hubs:
+39
Comments7

Articles