Очереди в Yii2
Очереди в Yii2
Привет народ пхпшный!
Работал с ларавелем, там очереди работают из коробки, а как с этим обстоят дела в Yii2?
Насколько работоспособен https://github.com/yiisoft/yii2-queue ? Смотрю, что там только драйвер под Redis и SQS, но нет для Gearman/Beanstalk/RabbitMQ/DB. Или для разных серверов - разные драйвера искать?
Я пока еще не выбрал сервер очередей. Мне надо что-то для небольших нагрузок - около 1000 заданий в час (рассылки, получение и обработка данных через REST API, и т.д.).
Посоветуйте пожалуйста сервер для локального использования, а так же стабильный драйвер к нему для Yii2.
Спасибо.
Работал с ларавелем, там очереди работают из коробки, а как с этим обстоят дела в Yii2?
Насколько работоспособен https://github.com/yiisoft/yii2-queue ? Смотрю, что там только драйвер под Redis и SQS, но нет для Gearman/Beanstalk/RabbitMQ/DB. Или для разных серверов - разные драйвера искать?
Я пока еще не выбрал сервер очередей. Мне надо что-то для небольших нагрузок - около 1000 заданий в час (рассылки, получение и обработка данных через REST API, и т.д.).
Посоветуйте пожалуйста сервер для локального использования, а так же стабильный драйвер к нему для Yii2.
Спасибо.
Re: Очереди в Yii2
https://github.com/yiisoft/yii2-queue/b ... sQueue.php
как видите реализация драйвера очень проста. для 1000 заданий в час подойдет что угодно. чтобы не ставить доп. ПО можно реализовать бд-драйвер. если загуглить, думаю уже будет готовая реализация
как видите реализация драйвера очень проста. для 1000 заданий в час подойдет что угодно. чтобы не ставить доп. ПО можно реализовать бд-драйвер. если загуглить, думаю уже будет готовая реализация
-
- Сообщения: 423
- Зарегистрирован: 2012.12.10, 14:19
- Откуда: Россия
Re: Очереди в Yii2
Я работаю с очередями через RabbitMQ, есть библиотека от videlalvaro
https://www.rabbitmq.com/getstarted.html
https://www.rabbitmq.com/getstarted.html
- samdark
- Администратор
- Сообщения: 9489
- Зарегистрирован: 2009.04.02, 13:46
- Откуда: Воронеж
- Контактная информация:
Re: Очереди в Yii2
Это не завершённая заготовка. Пока все используют стороннее.
Нравится Yii? Давайте сделаем его лучше!.
Re: Очереди в Yii2
Да, спасибо, я уже пощупал https://github.com/urbanindo/yii2-queue и https://github.com/wayhood/yii2-queue
Re: Очереди в Yii2
Разъясните пожалуйста, что за очереди такие и с чем их едят, когда это может быть полезно. Ни разу не сталкивался, наверное. Спасибо.
Осторожно! Вы общаетесь с новичком
Re: Очереди в Yii2
Очереди задач - это альтернатива cron для запуска фоновых процессов вроде рассылок писем, перерасчёта цен и т.п.girmate писал(а):Разъясните пожалуйста, что за очереди такие и с чем их едят, когда это может быть полезно. Ни разу не сталкивался, наверное. Спасибо.
Re: Очереди в Yii2
Из всех опробованных, считаю лучшей на данный момент https://github.com/zhuravljov/yii2-queue
Библиотека относительно новая, но присутствует необходимый функционал: возможность создать несколько очередей, отправлять в очередь отложенные задания, может работать с DB, Redis, RabbitMQ, Beanstalk и Gearman.
Библиотека относительно новая, но присутствует необходимый функционал: возможность создать несколько очередей, отправлять в очередь отложенные задания, может работать с DB, Redis, RabbitMQ, Beanstalk и Gearman.
Re: Очереди в Yii2
Спасибо за положительный отзыв.waki писал(а): ↑2017.04.16, 08:05 Из всех опробованных, считаю лучшей на данный момент https://github.com/zhuravljov/yii2-queue
Библиотека относительно новая, но присутствует необходимый функционал: возможность создать несколько очередей, отправлять в очередь отложенные задания, может работать с DB, Redis, RabbitMQ, Beanstalk и Gearman.
Хотелось бы уточнить на счет отложенных заданий. Эта функциональность зависит от возможностей брокера очереди, поэтому для RabbitMQ и Gearman она недоступна.
Re: Очереди в Yii2
Доброго времени суток!
Обратите, пожалуйста, внимание вот на это ишью:
https://github.com/zhuravljov/yii2-queue/issues/37
Спасибо
Re: Очереди в Yii2
Спасибо за найденный баг. Исправил.Йож писал(а): ↑2017.04.20, 01:46 Доброго времени суток!
Обратите, пожалуйста, внимание вот на это ишью:
https://github.com/zhuravljov/yii2-queue/issues/37
Спасибо
-
- Сообщения: 3
- Зарегистрирован: 2016.08.09, 17:20
Re: Очереди в Yii2
Могу я спросить вас как работает консольный запуск команд.KiTE писал(а): ↑2017.04.20, 14:15Спасибо за найденный баг. Исправил.Йож писал(а): ↑2017.04.20, 01:46 Доброго времени суток!
Обратите, пожалуйста, внимание вот на это ишью:
https://github.com/zhuravljov/yii2-queue/issues/37
Спасибо
Использую yii2 basic, на openServer, установил через композер, использую конфигурацию db queue, в таблице появляются задания, но в папке \commands нет консольных команд и при запуске
yii queue/info Error: Unknown command "queue/info".
Нужно ли что то прописывать в urlManager ?
Re: Очереди в Yii2
Команды регистрируются автоматически если вы добавили компонент в секцию bootstrap, а командный контроллер лежит в коде пакета.ultrasport писал(а): ↑2017.05.03, 18:08 Могу я спросить вас как работает консольный запуск команд.
Использую yii2 basic, на openServer, установил через композер, использую конфигурацию db queue, в таблице появляются задания, но в папке \commands нет консольных команд и при запуске
yii queue/info Error: Unknown command "queue/info".
В документации есть пример типового конфига.
Нет, urlManager к очереди отношения не имеет.Нужно ли что то прописывать в urlManager ?
-
- Сообщения: 3
- Зарегистрирован: 2016.08.09, 17:20
Re: Очереди в Yii2
Благодарю, не сразу понял что надо прописывать в /config/console.php, вместо /config/web.phpKiTE писал(а): ↑2017.05.03, 19:13
Команды регистрируются автоматически если вы добавили компонент в секцию bootstrap, а командный контроллер лежит в коде пакета.
В документации есть пример типового конфига.
Re: Очереди в Yii2
Подумайте сами. Для чего чаще всего нужны очереди? Чтобы разгрузить веб-процесс переносом всех тяжелых операций в отдельные процессы, и отдать пользователю ответ как можно быстрее. То есть, queue должен быть общим компонентом для всего проекта. Из веба вы ставите задачи в очередь, а консольным процессом их выполняете.
Re: Очереди в Yii2
Пипл привет.
Наконец-то дошли руки до https://github.com/Mirocow/yii2-queue
Сейчас не мной запилен движок на Mysql
Я же запилю остальные движки и исправлю ряд проблем.
Жду ваших отзывов
Наконец-то дошли руки до https://github.com/Mirocow/yii2-queue
Сейчас не мной запилен движок на Mysql
Я же запилю остальные движки и исправлю ряд проблем.
Жду ваших отзывов
Ищу работу: viewtopic.php?f=31&t=50584
GitHub: https://github.com/mirocow
Стоимость работ: от $30 час
тел/vbr/wsp: +7 (925) 514-63-53
skype/tlgrm: Mirocow
email: [email protected]
PHP Senior Developer aka Mirocow
GitHub: https://github.com/mirocow
Стоимость работ: от $30 час
тел/vbr/wsp: +7 (925) 514-63-53
skype/tlgrm: Mirocow
email: [email protected]
PHP Senior Developer aka Mirocow
- samdark
- Администратор
- Сообщения: 9489
- Зарегистрирован: 2009.04.02, 13:46
- Откуда: Воронеж
- Контактная информация:
Re: Очереди в Yii2
Думаю, лучше пустить все наработки в одно русло. Русло на данный момент — https://github.com/zhuravljov/yii2-queue/. Фатальных недостатков я там не нашёл...
Нравится Yii? Давайте сделаем его лучше!.
-
- Сообщения: 203
- Зарегистрирован: 2014.02.16, 03:09
Re: Очереди в Yii2
Очереди помогают освободить процесс от тяжести, но при этом не откладывать нужные задачи на потом.louisvuitton писал(а): ↑2018.11.30, 17:10 А в чем преимущество этих очередей перед консольными командами и запуском их по крону?
Опишите плз задачу, которая требует очереди
Например. Регистрируется пользователь в системе. Надо отправить ряд писем о регистрации: ему самому, администраторам, модераторам, надо подготовить для него дашборд с какими-то входными данными, пересчитать доступы.
В маленьких системах это делают в контроллере регистрации, когда после регистрации выполняют нужные действия, а потом показывают пользователю результирующую страницу. Но если действий много, то процесс регистрации затягивается (тем более если в процессе участвуют сторонние сервисы, с непредсказуемыми каналами связи), и пользователь ждет страницу долго.
Вот для того, чтобы пользователю показать результат быстро, но при этом не откладывая на потом продолжить выполнение связанных процессов, все эти сопреженные процессы отправляются в очереди.