我想在运行OS X 10.9.5的Mac上开发的Django 1.6.2应用程序中使用Celery和Redis。首先,我正在处理First Steps with Celery文档。但是,当我尝试使用此命令启动Celery时,如文档中所示:
celery -A tasks worker --loglevel=info
我收到此错误:
[<date>: ERROR/MainProcess] consumer: Cannot connect to redis://127.0.0.1:6379//: Error 61 connecting to 127.0.0.1:6379. Connection refused.. Trying again in 2.00 seconds...
根据我的研究,似乎问题可能已经发生,因为我没有启动Redis服务器。当我查看我的流程时,我看不到它在运行。但是,Celery文档没有讨论启动服务器,我也没有看到&#34; redis-server&#34;命令我虚拟环境的redis分支中的任何位置。
我用这个命令安装了redis:
pip install -U celery[redis]
然后我将/ usr / lib添加到我的DYLD_FALLBACK_LIBRARY_PATH环境变量中。
我还在Django设置中添加了以下行:
BROKER_URL = 'redis://127.0.0.1:6379/0'
我尝试运行的Python脚本是文档中显示的示例:
# tasks.py
from celery import Celery
app = Celery('tasks', broker='redis://127.0.0.1:6379')
@app.task
def add(x, y):
return x + y
我尝试使用&#34; localhost&#34;而不是&#34; 127.0.0.1&#34;但这并没有解决问题。我做错了什么?
谢谢!
答案 0 :(得分:1)
是的,问题是我实际上没有安装Redis。这两篇文章很有帮助:
Compiling a Web Development Environment on Mac OS X
How to install redis on OS X