我正在使用PyramID-1.2.1创建Web应用程序,sqlAlchemy作为数据库后端.
现在我需要和这个应用程序一起做一些周期性的任务,我想使用Celery作为任务处理器,sqlAlchemy作为消息队列和结果后端.
1)我已经安装了Celery-2.1.4,但我无法弄清楚如何使它工作.这是我的celeryconfig.py文件:
# List of modules to import when celery starts.CELERY_importS = ("my_app.tasks",)## Result store settings.CELERY_RESulT_BACKEND = "database"CELERY_RESulT_DBURI = "sqlite:///MyDataBase.db"CELERY_RESulT_SERIAliZER = "Json"## broker settings.broKER_TRANSPORT = "sqlakombu.transport.Transport"broKER_HOST = "sqlite:///MyDataBase.db"
my_app.tasks包含来自芹菜示例的简单添加任务.
现在我跑的时候
$celeryd -l info
我看到以下内容:
[2011-11-11 20:22:50,750: WARNING/MainProcess] celery@OrangeMac.local v2.1.4 is starting.[2011-11-11 20:22:50,765: WARNING/MainProcess] Configuration -> . broker -> sqlakombu.transport.Transport://guest@sqlite:///MyDataBase.db/ . queues -> . celery -> exchange:celery (direct) binding:celery . concurrency -> 4 . loader -> celery.loaders.default.Loader . logfile -> [stderr]@INFO . events -> OFF . beat -> OFF . tasks -> . chatrooms.task.add[2011-11-11 20:22:50,787: INFO/PoolWorker-1] child process calling self.run()[2011-11-11 20:22:50,789: INFO/PoolWorker-2] child process calling self.run()[2011-11-11 20:22:50,791: INFO/PoolWorker-3] child process calling self.run()[2011-11-11 20:22:50,796: INFO/PoolWorker-4] child process calling self.run()[2011-11-11 20:22:50,802: WARNING/MainProcess] celery@OrangeMac.local has started.[2011-11-11 20:22:50,804: WARNING/MainProcess] Traceback (most recent call last):[2011-11-11 20:22:50,805: WARNING/MainProcess] file "/Users/shashkin/python_v_env/bin/celeryd",line 8,in
我错过了什么?
2)后来我想在我的应用程序中启动Celery.芹菜 – 挂架包安装后我该怎么办?我应该在应用程序的.ini文件中放置芹菜的设置吗?有人可以给我任何一个例子,因为我在网上找到的那些对我没什么帮助.
谢谢.
最佳答案这看起来像芹菜包及其依赖项之间的版本兼容性问题.使用最新版本的芹菜,2.4.5你的例子就可以了.使用2.1.4我得到了同样的错误.如果由于任何原因您只需要2.1.4版本的芹菜,您必须找出降级所需的依赖项以使其正常工作.通过查看回溯,很可能,它将是胡萝卜依赖,但如果其他依赖需要特定版本的胡萝卜,你可能会陷入依赖地狱.
我强烈建议使用带有pip的virtualenv,以便能够轻松地试验包的版本.尝试使用linux存储库中的Python包开发一些东西可能会非常痛苦.
buildout versions或pip requirements解决了这类问题,但AFAIK没有针对芹菜的固定依赖版本. 总结
以上是内存溢出为你收集整理的python – 使用Celery与SQLAlchemy和Pyramid全部内容,希望文章能够帮你解决python – 使用Celery与SQLAlchemy和Pyramid所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)