我已经构建了一个Django web应用程序和一些Django-Piston服务。使用web界面,用户向web服务提交一些POSTed形式的数据,然后该web服务使用Django-celery启动一个后台任务。
在使用manage.py的开发环境中,一切工作正常。现在,我正在尝试将其转移到一个合适的apache服务器上的生产环境中。web应用程序和web服务在生产环境中运行良好,但启动celeryd作为守护进程时遇到了严重问题。根据以下说明: celeryd我已经创建了一个celeryconfig.py文件,并将其放在/usr/bin目录中(这是我的arch linux服务器上的celeryd所在的位置)。
CELERYD_CHDIR="/srv/http/ControllerFramework/"
DJANGO_SETTINGS_MODULE="settings"
CELERYD="/srv/http/ControllerFramework/manage.py celeryd"但是,当我尝试从命令行启动celeryd时,我得到以下错误:
"Missing connection string! Do you have "
celery.exceptions.ImproperlyConfigured: Missing connection string! Do you have CELERY_RESULT_DBURI set to a real value?不知道下一步该怎么走。下面是我的settings.py部分,因为它与这个问题有关:
BROKER_HOST = "localhost"
BROKER_PORT = 5672
BROKER_USER = "controllerFramework"
BROKER_PASSWORD = "******"
BROKER_VHOST = "localhost"发布于 2010-07-27 05:42:43
因此,我最终与django-celery项目负责人进行了一次交谈。有几件事。首先,必须使用'manage.py celeryd‘运行芹菜。其次,在settings.py文件中,你必须‘导入djcelery’这个导入问题可能会在下一个版本中修复,但现在你必须这样做。
https://stackoverflow.com/questions/3321741
复制相似问题