您的位置:首页 > 编程语言 > Go语言

django下使用celery进行异步任务

2015-10-14 11:33 1141 查看
虚拟环境:django,gevent,celery

项目根目录下celery_porject

import os

from celery import Celery

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'project.settings')

app = Celery('project',

             broker=';'.join([

                 'amqp://rabbit:rabbit@rabbit_01:5672//mq',

                 'amqp://rabbit:rabbit@rabbit_02:5672//mq']),

             backend='amqp://',

             include=['app1.tasks1', 'app2.tasks2'])

app.conf.update(

    CELERY_TASK_RESULT_EXPIRES=3600,

    CELERY_IGNORE_RESULT=True,

    CELERYD_MAX_TASKS_PER_CHILD=300,

    CELERY_TASK_SERIALIZER='json'

)

if __name__ == '__main__':
    app.start()

run command:/usr/local/envs/project/bin/celery --workdir=/usr/local/project -A celery_project worker -l info -P gevent -c 1000 -Ofair

异步任务前添加:

import psycogreen.gevent

psycogreen.gevent.patch_psycopg()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: