gpt4 book ai didi

django_rq 作业未添加到队列中

转载 作者:IT王子 更新时间:2023-10-29 06:13:17 25 4
gpt4 key购买 nike

我正在使用: django-rq:0.9.6 rq_scheduler: 0.6.1

我对 docker 和 django_rq 还很陌生。

我遇到的问题是,我的作业未执行或未进入队列。

docker-compose.yml

redis:
container_name: projapi-redis
restart: always
image: redis:latest
ports:
- '6379:6379'

rq:
container_name: projapi-rq
build: .
command: python manage.py rqworker default
volumes:
- .:/src
links:
- redis

rqscheduler:
container_name: projapi-rqscheduler
build: .
command: python manage.py rqscheduler
volumes:
- .:/src
links:
- redis

设置.py

RQ_QUEUES = {
'default': {
'URL': 'redis://redis/0',
}
}

在 python shell 中,我运行了 :do_task.delay() 并且 RQ 队列的已完成作业数量大幅增加。当我运行:scheduler.schedule(datetime.utcnow(), 'do_task', interval=20) 时,我没有收到任何响应。

任务.py

from django_rq import job, get_scheduler
from datetime import datetime


scheduler = get_scheduler()


@job
def do_delay_task():
return 'do_delay_task'


@job
def do_task():
return 'do a task'


do_delay_task.delay()
scheduler.schedule(datetime.utcnow(), 'do_task', interval=2000)

最佳答案

这是周期性的任务运行,你忘了运行它:

scheduler.run()

也可以考虑使用这个模块: https://github.com/rq/rq-scheduler

关于django_rq 作业未添加到队列中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46248456/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com