Celery使用数据库代替rabbitmq

出于前期用户不多,而且是部署在bluehost,出于简单考虑,用数据库代替rabbitmq. 

安装

先安装django-kombu:

$ pip install -U django-kombu

配置

可以直接使用原来的DATABASES数据库设置。

  1. 设置 broker transport:

    BROKER_URL = "django://" 
  2. 添加到INSTALLED_APPS:

    INSTALLED_APPS = ("djkombu", ) 
  3. 验证数据库设置:

    DATABASE_ENGINE = "mysql" DATABASE_NAME = "mydb" DATABASE_USER = "myuser" DATABASE_PASSWORD = "secret" 

  1. 同步数据库:

    $ python manage.py syncdb

限制

当前不支持

  • 远程控制命令 (celeryev, broadcast)
  • 事件,包括 Django Admin monitor.
  • Using more than a few workers (can lead to messages being executed multiple times).
posted @ 2012-03-06 15:50  文刀无尽  阅读(969)  评论(0编辑  收藏  举报