Я использую django -rq, где я указываю очередь по умолчанию вместе с хостом Redis, портом, базой данных и паролем в файле settings.py.
У меня также есть task.py в одной из папок моего приложения, где я указываю планировщик, см. Ниже:
#tasks.py
import django_rq
from django_rq import get_scheduler
scheduler = django_rq.get_scheduler('default')
scheduler.schedule(
scheduled_time = datetime.utcnow(),
func = some_test_function,
result_ttl=100,
interval = 240)
Наконец, у меня есть 2 отдельные службы Systemd, одна для RQ, а другая для RQScheduler.
#RQWORKER.service
[Service]
Type=simple
WorkingDirectory=/home/user/project
ExecStart=/home/user/project/project_env/bin/python \
/home/user/project/manage.py \
rqworker
#RQSCHEDULER.service
[Service]
Type=simple
WorkingDirectory=/home/user/project
ExecStart=/home/user/project/project_env/bin/python \
/home/user/project/manage.py \
rqscheduler
В итоге, если я запускаю rqscheduler.service, он запускается один раз (показывая мне, по крайней мере, что он работает). К сожалению, через 3 минуты периодически не выполняется.
Что я здесь делаю не так?
Спасибо!