@gitdev

Поддерживает ли PHP асинхронность на уровне ядра языка программрования?

Поддерживает ли PHP асинхронность из коробки, если да - то как и что почитать на эту тему?
  • Вопрос задан
  • 228 просмотров
Пригласить эксперта
Ответы на вопрос 2
@rPman
из коробки в php есть асинхронные методы работы с сокетами, метод socket_select позволяет создать event loop и вести асинхронную коммуникацию

так же библиотека curl позволяет вести загрузку в фоновом режиме с помощью curl_multi_...

используя штатные механизмы языка созданы библиотеки по типу ReactPHP с помощью которых можно создавать событийно-ориентированные приложения, например асинхронный websocket и http сервер в одном приложении. Если сравнивать с nodejs, где асинхронность 'из каропки' то реализация на php чуть медленнее но так каксам язык в большинстве случаев работает быстрее, в некоторых случаях код будет работать быстрее (например я писал простейший веб сервис, работающий со сжатыми gzip файлами 'построчно', так вот на nodejs было сильно медленнее, но сам event loop там быстрее)

p.s. чтобы nodejs по скорости был сравним с php приходится осторожно выбирать какими методами пользоваться, например штатные объекты и массивы там медленнее чем класс Map
Ответ написан
Mecitan
@Mecitan
Уверенный пользователь клавиатуры
Есть такие штуки, генераторы, это почти как асихнронность. :D
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы