Планировщик RQ создает исключение NoRedisConnectionException

Я создаю приложение и пытаюсь настроить запланированные задачи с помощью Redis/python-rq/rq-scheduler.

Я могу настроить очередь просто отлично, вот так:

from redis import Redis
from rq import Queue

rq = Queue(connection=Redis(host=BaseConfig.REDIS_HOST, port=BaseConfig.REDIS_PORT))

def hello_world():
    print("hello world")

@app.route("/queue/test", method=["GET", "POST"])
def test_queue():
    job = rq.enqueue_call(func=hello_world)
    return jsonify(job_id=job.id())

Но теперь, когда я пытаюсь настроить запланированное задание, в соответствии с документацией здесь ссылка. Вот так:

from datetime import timedelta

from redis import Redis
from rq import Queue
from rq_scheduler import Scheduler

rq = Queue(connection=Redis(host=BaseConfig.REDIS_HOST, port=BaseConfig.REDIS_PORT))
rqs = Scheduler(queue=rq)

def hello_world():
    print("hello world")

@app.route("/queue/test", method=["GET", "POST"])
def test_queue():
    job = rqs.enqueue_in(timedelta(seconds=30), func=hello_world)
    return jsonify(job_id=job.id())

я получил

raise NoRedisConnectionException('Could not resolve a Redis connection')                                                                                                                                                                   
rq.connections.NoRedisConnectionException: Could not resolve a Redis connection

Вся помощь будет оценена. Спасибо.

0 ответов

Вам необходимо передать соединение при создании объекта планировщика

Другие вопросы по тегам