Планирование периодических задач RQ с использованием asyncioPython

Программы на Python
Ответить
Anonymous
 Планирование периодических задач RQ с использованием asyncio

Сообщение Anonymous »

Я считаю, что архитектура RQ Scheduler в корне ошибочна и намного сложнее, чем должна быть.

Расписания хранятся в Redis

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

Простое удаление строки Scheduler.cron(...) не удаляет расписание; вам необходимо вручную запустить Scheduler.cancel(job_id).

Код: Выделить всё

rqscheduler
не запускает ваш код[/b]

Команда rqscheduler только опрашивает Redis на наличие срочных заданий. Он не импортирует и не выполняет ваш код Python для динамического обновления расписаний.
Нет встроенной сверки

Вы должны управлять жизненным циклом запланированных заданий — их добавление, обновление или удаление — самостоятельно, часто требуя дополнительных сценариев или ручных процессов.

Я настоятельно предпочитаю подход Celery Beat к отправке/постановке задач в очередь из моего Python код, именно тогда, когда они запланированы run.

Однако в этом конкретном проекте я использую RQ, поэтому Celery Beat мне недоступен.
Как мне создать что-то простое, которое принимает строки cron и работает аналогично Celery Beat?

Подробнее здесь: https://stackoverflow.com/questions/793 ... ng-asyncio
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»