Aсинхронный PHP / Антон Шабовта (Onliner)

Поделиться
HTML-код
  • Опубликовано: 21 окт 2024
  • Приглашаем на конференцию HighLoad++ 2024, которая пройдет 2 и 3 декабря в Москве!
    Программа, подробности и билеты по ссылке: clck.ru/3DD4yb
    --------
    Презентация и тезисы:
    phprussia.ru/2...
    Разбираемся в блокирующих и неблокирующих операциях в PHP.
    Структура Event Loop и асинхронных примитивов, таких как Promise изнутри.
    Генераторы как способ управления потоком исполнения программы.
    Современные подходы реализации кооперативной многозадачности в PHP.
    Что нас ждет в ext-async, AMPHP 3 и PHP 8.
    Нашли ошибку в видео? Пишите нам на support@ontico.ru

Комментарии • 8

  • @codingfox
    @codingfox 3 года назад +4

    Вывод: лучше дальше пользоваться старым добрым RabbitMQ и добавлять асинхронщину только там где нужно)

  • @alexeychikilevsky4655
    @alexeychikilevsky4655 5 месяцев назад +1

    "...Интерпретатор, интерпретирует, т.е построчно(!) исполняет каждую строчку кода" - в принципе самое короткое видео могло бы получится, там не нужно ничего дальше:)

  • @lemeshenko
    @lemeshenko Год назад

    Не совсем понятно зачем надо мучатся с event loop если mysql и postgres поддерживают асинхронные запросы

  • @VorobyevAlexander
    @VorobyevAlexander 5 лет назад +1

    А ссылку на статью о которой идет речь на 44:22 поделитесь?

    • @alexanderberman9629
      @alexanderberman9629 4 года назад +1

      nikic.github.io/2012/12/22/Cooperative-multitasking-using-coroutines-in-PHP.html наверное речь об этом. Есть русская версия на хабре, если не ошибаюсь

  • @Матецкий-с7п
    @Матецкий-с7п 4 года назад +2

    Да в php можно применять такие манёвры, если дело касается допустим рассылки по разным базам и т.д. Где действительно от этого будет профит. Но в случаи создания сервера на php, это полный треш, разве что запускать для решение временных(коротко живущих) задач. Вся эта идея улетает в пропасть если работать на одном ядре, так как nginx тоже использует event-loop и шаблон реактор, а это само за себя уже говорит что помимо бекенда который будет перезаписывать кеши процессора, будет ещё nginx использовать кеш и само по себе такое использование с nginx на мой взгляд не эффективно. Если же несколько ядер тогда ещё можно как-то указать при создании сокета на каком ядре его обрабатывать, тогда можно отделить работу nginx от event-loop-а php и может быть более эффективно чем доверить ос переключать контексты по разным ядрам самостоятельно, нагло перезаписывая кеши друг друга.. P.S. моё скромное мнение (и возможно ошибочное)

  • @СашаИванов-д8щ2ь
    @СашаИванов-д8щ2ь Месяц назад

    т ца мффее