company_banner

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

    Всем привет!

    Я Павел Мурзаков, тимлид серверной команды 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.

    Присоединяйтесь к чату митапа, там регулярно бывают интересные обсуждения!
    • +39
    • 4,9k
    • 7
    Badoo
    389,26
    Big Dating
    Поделиться публикацией

    Похожие публикации

    Комментарии 7

      +1
      Если будет выложено видео на канале, хотелось бы видеть его порезанным на доклады, а не одним куском на 3 часа:) заранее спасибо!
        +1
        В прошлом году его выложили сначала целиком, а через некоторое время и по частям
          +2
          Да-да, на нашем канале через некоторое время после митапа, как и всегда, будет плейлист с отдельными докладами.
        0
        > Сравнение производительности PHP-FPM, RoadRunner
        А где же swoole?
          +2
          Если честно я, все еще, не разделяю энтузиазма по поводу Swoole. Но, ввиду интереса сообщества к технологии, постараюсь включить его в бэнчмарки.
          0
          Регистрация на событие закрыта

          Можно рассчитывать на то что места добавят, как это было на прошлом митапе?
            0
            К сожалению, нет — очень много желающих, опасаемся, что будет тесновато.

          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

          Самое читаемое