celery异步任务

 1.安装 pip install celery

 2.创建celery_tasks文件夹,创建config配置文件和main文件

    

# 在config.py文件中配置中间人broker地址信息 - redis数据库信息
broker_url = "redis数据库地址信息"        # 例如 broker_url = "redis://127.0.0.1:6666/3"

# 在main.py文件中创建Celery对象并加载配置
from celery import Celery
celery_app = Celery("name")        # name为对象名,随意
celery_app.config_from_object("celery_tasks.config")        # 加载配置
celery_app.autodiscover_tasks(['celery_tasks.sms'])            # 调用autodiscover_tasks方法使work在启动时自动发现任务函数

 

 3. 在celery_tasks文件夹下新建功能模块,例如想添加短信验证任务就新建mail文件夹,然后在文件夹下新建tasks.py,在tasks中定义任务函数

  

@celery_app.task(name="send_sms_codes")
def send_sms_codes(a, b):
    print("OK %s, %s" % (a, b)

 

  4.启动worker工作进程

  在terminal中运行,且路径在celery_tasks的上一级,命令:celery -A celery对象所在文件 worker -l 日志级别

xxx/project$ celery -A celery_tasks.main worker -l info    

 

  5.使用功能模块

from celery_tasks.sms.tasks import send_sms_codes
send_sms_codes.delay(*args)

 

posted @ 2019-08-04 21:23  爱吃猫的鱼i  阅读(312)  评论(1编辑  收藏  举报