Size: a a a

2021 February 13

SP

Sergey Protko in PHP
Egor Gruzdev
Чем очереди не устраивают для таких задач.

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

Но с описанным кейсом справится мультиплекс запросов курла.
источник

SZ

Sergey Zolotov in PHP
Egor Gruzdev
Чем очереди не устраивают для таких задач.

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

ИЛ

Иван Лещёв in PHP
Egor Gruzdev
Чем очереди не устраивают для таких задач.

Мне кажется при большом кол-ве задач и асинхронность js не спасет, уперетесь или в память или сервис куда стреляют запросы включит ограничения.
Для задач типа 100500 гет запросов?
источник

ИЛ

Иван Лещёв in PHP
Очереди на то и очереди, что выполняются по очереди. А надо параллельно.
источник

VC

Vladimir Chernyshev in PHP
Иван Лещёв
Очереди на то и очереди, что выполняются по очереди. А надо параллельно.
100500 воркеров )
источник

MG

Max Grom in PHP
Гонять - в принципе не эфективное занятие. У нас это реальный кейс когда нужно сделать 100500 запросов. Складывается в очередь и параллелится на N воркерах. Никаких проблем. Единственный нюанс в отложенной обработке, могут быть кейсы когда это непозволительно но это отдельная тема
источник

АС

Альберт Степанцев... in PHP
Иван Лещёв
Очереди на то и очереди, что выполняются по очереди. А надо параллельно.
Вы очередь рассматривайте как способ запуска обработчиков. Которые уже выполняются параллельно. И тогда всё встаёт на свои места.
источник

АС

Альберт Степанцев... in PHP
Можно вообще обойтись без очередей в понимании "ну это типа кролик"
Один процесс у вас получает события, вполне себе последовательно. И запускает для каждого события обработчик. Обработчики уже работают параллельно.
источник

АС

Альберт Степанцев... in PHP
С очередью, конечно, попроще получается.
источник

SM

Sergey Milegov in PHP
Egor Gruzdev
Чем очереди не устраивают для таких задач.

Мне кажется при большом кол-ве задач и асинхронность js не спасет, уперетесь или в память или сервис куда стреляют запросы включит ограничения.
Зачем мне очереди, если так все работает отлично? Сервис не включит ограничения, потому что он мой. И память не течет. Хз зачем еще что-то рридумывать.
источник

SM

Sergey Milegov in PHP
Vit
Можно написать баш скрипт который запустит сколько хотите пхп процессов. Можно сделать fork() а для удобства даже какой-нить Spork заюзать, ток посвежее. Если уж не охота менять язык. Если что - я не против асинка в пхп, я только о том, что пример не удачный от слова совсем.
Зачем мне всё это? Если оно сложнее описанного решения.
источник

АС

Альберт Степанцев... in PHP
Sergey Milegov
Зачем мне очереди, если так все работает отлично? Сервис не включит ограничения, потому что он мой. И память не течет. Хз зачем еще что-то рридумывать.
Ну сервисы очередей дают очевидную гарантию, что одно сообщение прочтет один кастомер и только один раз...
источник

КГ

Константин Грачев... in PHP
источник

SM

Sergey Milegov in PHP
Альберт Степанцев
Ну сервисы очередей дают очевидную гарантию, что одно сообщение прочтет один кастомер и только один раз...
У меня нет такой необходимости
источник

VC

Vladimir Chernyshev in PHP
Альберт Степанцев
Ну сервисы очередей дают очевидную гарантию, что одно сообщение прочтет один кастомер и только один раз...
it depends гарантий exactly once они не дают
источник

V

Vit in PHP
Речь не о надобности и решении,а лишь о том, что вести речь про надобность или не надобность [а]синхронности на примере отправки пачки хттп запросов - не корректно
источник

V

Vit in PHP
Все что делает газл это curl_multi_unit() и ретурн трансфер фолс. Никакой асинхронности здесь нет
источник

V

Vit in PHP
И даже умей пхп в потоки - наплодить их вместо решения выше - был бы так себе план:)
источник

ИЛ

Иван Лещёв in PHP
Альберт Степанцев
Ну сервисы очередей дают очевидную гарантию, что одно сообщение прочтет один кастомер и только один раз...
сервисы очередей - это что-то, что даётся бесплатно?
просто сказал "сервис очередей" и оно заработало?
ну как в газл дать сразу десяток запросов вместо одного
источник

VC

Vladimir Chernyshev in PHP
Vit
Все что делает газл это curl_multi_unit() и ретурн трансфер фолс. Никакой асинхронности здесь нет
вообще асинхронность там как раз есть и не сильно под капотом
источник