170 похожих чатов

Друзья, подскажите, пожалуйста. PHP версия 5.3 Мне необходимо создать класс, который

при инициализации создаст новый поток для фоновой отправки в брокер сообщений.

Очередь для отправки в брокер будет наполняться в одном потоке с приложением. Но вот сама отправка в брокер должна быть в другом потоке (отправка в фоновом режиме).

То есть я хочу, чтобы мы наполняли очередь по мере выполнения в программы, а отправка из очереди в брокер была в фоновом режиме.
Подскажите, пожалуйста, как мне поступиться к этому?

Товарищ сказал, что в Laravel что-то подобное есть из коробки. Может знаете?

14 ответов

18 просмотров

брокеры, очереди, все по современному, у тут бах PHP 5.3 не пора ли уже обновится, в том числе и Laravel подтянуть до живой версии

Андрей- Автор вопроса
Egor Gruzdev
брокеры, очереди, все по современному, у тут бах P...

У заказчика такая версия стоит:( Сказал, что повышением пока разработчики не занимались и нужно эффективное решение именно на данной версии:(

Вы знакомы разделами Redis — Pub / Sub в laravel? Этот раздел вам должен помочь.

Андрей
У заказчика такая версия стоит:( Сказал, что повыш...

ну попробуй реализовать функционал afterResponse(), что добавили в последних версиях Laravel

Андрей- Автор вопроса
Bakhodir Sayfiyev
Вы знакомы разделами Redis — Pub / Sub в laravel? ...

Нет. не знаком. Вчера наткнулся на такую вещь. Написано как раз про фоновую отправку. Но при этом пример (если я правильно всё понял) линейный. И фоновой отправкой тут не пахнет. Время не экономится.

Андрей
screenshot Нет. не знаком. Вчера наткнулся на такую вещь. Нап...

Так в чем проблема сделать добавление в очередь Redis, а отдельным кроном - вычитывать из очереди и обрабатывать данные из очереди? Пример на картинке искуственный для того, чтобы показать какие приемы нужно использовать.

Андрей- Автор вопроса
QQQ
Так в чем проблема сделать добавление в очередь Re...

Очередь у меня будет отправляться в кафку. Нет смысла добавлять в Redis, если можно сразу в кафку) Суть как раз в том, чтобы отправку в броккер сделать фоновой

Андрей
Очередь у меня будет отправляться в кафку. Нет смы...

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

Андрей- Автор вопроса
QQQ
так redis и кафка - это просто одно и то же практи...

Да, вот я и говорю, что redis и кафка одно и тоже. Но разве очередь не умирает после выполнения запроса?

Интересно, а каким образом работает PHP? Давайте начнем с этого)

Алексей Горшков
При чем тут пхп?

Я просто не особо понял - зачем сохранять в базу данных, если есть очередь)

демона пишешь, и пусть паблишет туда. на ларавель есть jobs

Андрей- Автор вопроса

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

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта