zoukankan      html  css  js  c++  java
  • Celery多任务结构

    视图结构

    pro_cel
        ├── celery_task# celery相关文件夹
        │   ├── celery.py   # celery连接和配置相关文件,必须叫这个名字
        │   └── tasks1.py    #  所有任务函数,如用户相关
        │    └── tasks2.py    #  所有任务函数,如订单相关
        ├── check_result.py # 检查结果
        └── send_task.py    # 触发任务

    celery.py 配置信息

    
    
    # 必须叫celery,生成celery对象
    from celery import Celery
    
    # 下面是配置信息,这里使用redis为列
    
    # 处理结果
    backend = 'redis://:lmdxxxx@139.xxx.xxx.42:6380/7'
    # 中间人
    broker = 'redis://:lmdxxxx@139.xxx.xxx.42:6380/8'
    APP = Celery('test', broker=broker, backend=backend,
                 # 包含一下俩个任务文件,去相应的py文件中找任务,对多个任务做分类
                 include=[
                     'celery_task.order_task',
                     'celery_task.user_task',
                 ])

    celery配置中 include是多任务的时候celery会自己去里面找任务去执行

    order_task.py 订单相关的任务

    # 订单相关
    from celery_task.celery import APP
    
    
    @APP.task
    def order_add(x, y):
        import time
        time.sleep(1)
        return '订单相关的:%s' % (x + y)

     user_task.py 用户相关的任务

    # 用户相关
    from celery_task.celery import APP
    
    
    @APP.task
    def user_add(x, y):
        import time
        time.sleep(2)
        return '用户相关的:%s' % (x + y)

     add_task.py 提交任务

    from celery_task.order_task import order_add
    from celery_task.user_task import user_add
    
    order = order_add.delay(5, 6)
    user = user_add.delay(10, 0)
    print(order)
    print(user)

    启动worker

    linux命令:celery worker -A celery_task -l info

    win命令:celery worker -A celery_task -l info -P eventlet

    多任务直接启动 celery_task 这个包就行了,因为里面必须固定写celery

    注:celery_task是自己创建包的那个名字

     

    获取结果同上一篇文章

  • 相关阅读:
    CentOS安装Nginx Pre-Built
    CMake设置编译参数
    SQLServer脚本编写
    使用QNetworkAccessManager实现Qt的FTP下载服务
    使用CMD命令设置IP
    IIS6(Win2003) 使用.net 4.0 后,默认文档失效解决方案。
    windows7打印时,显示脱机,提示“服务器打印后台处理程序服务没有运行”。
    阻止浏览器自动填表
    Java经典编程题50道之四
    Java经典编程题50道之三
  • 原文地址:https://www.cnblogs.com/limengda/p/11221177.html
Copyright © 2011-2022 走看看