小编典典

两个模块应该使用相同的Redis连接吗?(我正在与Flask合作)

redis

我正在构建使用Redis队列的Flask应用。工人的代码是:

listen = ['default']

#redis_url = os.getenv('REDISTOGO_URL', 'redis://localhost:6379')
conn = redis.from_url(redis_url)
if __name__ == '__main__':
    with Connection(conn):
        worker = Worker(list(map(Queue, listen)))
        worker.work()

另一个模块app.py包含用于处理Flask路由的代码。我的问题是,app.py是否应按以下方式创建新的Redis连接:

q = Queue(connection= redis.from_url(redis_url))
q.enqueue_call(func=mailers.send_message, kwargs=request.json, result_ttl=86400)

还是应该使用app.py

import conn from worker

并使用该连接?


阅读 394

收藏
2020-06-20

共1个答案

小编典典

我会说使用新的连接,除非您确实有充分的理由不这样做(尽管我无法想象这样的原因)

2020-06-20