zoukankan      html  css  js  c++  java
  • django+celery+rabitmq

    django 项目中的设置(proj代表项目目录)

    proj  

    settings.py 

    CELERY_BROKER_URL = 'amqp://guest:guest@localhost:5672/'
    CELERY_ACCEPT_CONTENT = ['json']
    CELERY_RESULT_BACKEND = 'db+sqlite:///results.sqlite'
    CELERY_TASK_SERIALIZER = 'json'
    CELERY_RESULT_SERIALIZER = 'json'

    proj

    __init__.py

    from __future__ import absolute_import, unicode_literals
    
    # This will make sure the app is always imported when
    # Django starts so that shared_task will use this app.
    from .celery import app as celery_app
    
    __all__ = ['celery_app']

    proj

    __celery.py

    from __future__ import absolute_import, unicode_literals
    import os
    from celery import Celery
    
    # set the default Django settings module for the 'celery' program.
    
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'proj.settings')
    
    app = Celery('proj')
    
    # Using a string here means the worker don't have to serialize
    
    # the configuration object to child processes.
    
    # - namespace='CELERY' means all celery-related configuration keys
    
    #   should have a `CELERY_` prefix.
    
    app.config_from_object('django.conf:settings', namespace='CELERY')
    
    # Load task modules from all registered Django app configs.
    
    app.autodiscover_tasks()
    
    
    @app.task(bind=True)
    def debug_task(self):
        print('Request: {0!r}'.format(self.request))

    app

    tasks.py

    from __future__ import absolute_import, unicode_literals
    from celery import shared_task
    
    
    @shared_task
    def function():
    pass

    开启命令

    ## rabbitmq
    service rabbitmq-server start
    ## celery
    celery -A OldboyCRM worker -l info (在OLDBOYCRM目录内)
    ## CRM
    python manage.py runserver (在OLDBOYCRM目录内)
  • 相关阅读:
    TensorFlow学习笔记之四——源码分析之基本操作
    TensorFlow学习笔记之三——适合入门的一些资源
    AW286 选课(背包类树形DP)
    AW303 运输小猫
    AW302 任务安排3
    AW301 任务安排2 (斜率优化DP)
    AW300 任务安排1
    AW311 月之谜
    AW310 启示录
    AW292 炮兵阵地
  • 原文地址:https://www.cnblogs.com/CN-S/p/6274255.html
Copyright © 2011-2022 走看看