Поток в php всегда 1. И в традиционном, и с помощью amphp
Код выполняется не параллельно, а конкурентно. Разница в словах маленькая, но существенная в деле
Проблема в том, что вы абсолютно не понимаете, как работает конкурентный код. для вас всё — асинхронность, что не совсем верно (в корне не верно). Но пойдём по порядку.
Разница будет видна и на 1 записи, и на 10 разом. В обоих случаях запись не блокирует общий поток выполнения и во время записи можно сделать что-то ещё.
Мультикурл будет блокировать поток выполнения и работает совершенно иначе. Но мы уже выяснили, что вы не очень понимаете разницу. Что касается вашей демонстрации, то там просто код неверный. А не "PDO быстрее"
В реальном коде их будет меньше, ибо большая часть бойлерпринта скрывается за инфраструкторой и тот же луп инстанцируется ровно 1 раз где-то там, в точке входа.
Ничего не понял, но звучит круто
Ну это ведь всё меняет! Пойду на авторов bc-math пожалуюсь. А то иш чё удумали, из коробки нету, кафно.
Практически всё, что дальше после 4-ого пункта — мусор, который к реальности отношения не имеет и комментировать его нет смысла.
вы правда считаете, что по поводу static в return declaration писали только вы и самый первый аж 23-его декабря?) Ведь это на столько не очевидный кейс...
А вы не думаете :)
Там есть ответ, но вы явно не очень понимаете как работают рутины в прочих языках и в чём отличие именно в голанге (в сабже есть).
Ни у кого нет.
И вы всё ещё не понимаете почему Горутины, а не Корутины.
Эт бывает
это как раз вы на те же грабли прыгнули :)
Я бы на вашем месте посмотрел чем Горутины отличаются от условных Корутин.
p.s. не только 1 буквой из соображений маркетинга.
Что касается межпроцессного взаимодействия, то в пхп нет ни единого юзкейса для этого
Для cpu-bound есть воркерпул у того же ампа. Процессы проще и надёжнее :)
Что касается горутин, то вас не туда понесло)
"асинхронность другого типа"
Заканчивайте, не смешно уже.
традиционный — это просто способ подчеркнуть что имеется в виду)
pthreads умер давно, да и не нужен он :)
...
Позволю себе вмешаться.
Поток в php всегда 1. И в традиционном, и с помощью amphp
Код выполняется не параллельно, а конкурентно. Разница в словах маленькая, но существенная в деле
Проблема в том, что вы абсолютно не понимаете, как работает конкурентный код. для вас всё — асинхронность, что не совсем верно (в корне не верно). Но пойдём по порядку.
Разница будет видна и на 1 записи, и на 10 разом. В обоих случаях запись не блокирует общий поток выполнения и во время записи можно сделать что-то ещё.
Мультикурл будет блокировать поток выполнения и работает совершенно иначе. Но мы уже выяснили, что вы не очень понимаете разницу. Что касается вашей демонстрации, то там просто код неверный. А не "PDO быстрее"
В реальном коде их будет меньше, ибо большая часть бойлерпринта скрывается за инфраструкторой и тот же луп инстанцируется ровно 1 раз где-то там, в точке входа.
Ничего не понял, но звучит круто
Ну это ведь всё меняет! Пойду на авторов bc-math пожалуюсь. А то иш чё удумали, из коробки нету, кафно.
Практически всё, что дальше после 4-ого пункта — мусор, который к реальности отношения не имеет и комментировать его нет смысла.
p.s. Вот вам немного синтетики: https://github.com/php-service-bus/performance-comparison#details
то, что выше — криво, косо и не показательно.
В нагрузку к amphp/http-server можно взять amphp/cluster. Мир заиграет новыми красками ;)
вы правда считаете, что по поводу static в return declaration писали только вы и самый первый аж 23-его декабря?) Ведь это на столько не очевидный кейс...
Пчёлы против мёда :)
psalm, phpstan, phan… inspect в шторме наконец.
Но нет, люди продолжают придумывать себе проблемы) на что только не пойдёшь лишь бы не работать
а зачем оно тогда в статье?
7.3 спешит на помощь, не?
Сделаем :)
Я писал об этом в сабже. В случае реакта, придётся самому пилить.
удобнее так :)
Потоков в php не густо (всего 1). А вот как только будет 2 промиса, в рамках которых необходимо выполнить транзакции, будет ждать сюрприз.