平台项目 ~ celery 异步之异步处理功能

一 简介:今天来聊聊celery两大功能之一的异步处理

二  标准流程:

1 建立 config 文件
           class Config:
             ENABLE_UTC = False
             CELERY_RESULT_BACKEND = ‘redis://127.0.0.1:6379/5‘
             BROKER_URL = ‘redis://127.0.0.1:6379/6‘
            注意 1 所有参数都必须大写,并且为固定value
            2 队列和结果集本文都将采用redis,命名两个不同的库就行
    2 建立 celery文件
           app = Celery(‘test1‘)
           app.config_from_object(Config)
           app.autodiscover_tasks([‘celery_demo‘])
   3 建立tasks文件
        @ app.task #装饰器 这里也可以采用 @shared_task
        def a():
          return "ok" 返回值
   4 启动多worker
       1 这里要注意 输出结果确保task发现.不然是无法调用的
          类似格式 .tasks.function
      2 在celery项目同等级目录执行相关命令
         celery -A celery_demo.celery worker --loglevel=info -P eventlet  -f  log.name
    5 调用方式  
        result=a.delay()
       1 调用delay延迟函数
       2 result.ready() True代表任务完成 False代表未完成
          result.status
          PENDING,表示没有执行

三 错误解决办法

错误1 Received unregistered task of type ‘mysql_web.celery_demo.tasks.mail‘.
   可能原因
    1 如果task有被注册的话 填写 @app.task(name=‘提示的任务名‘)
    2 如果task没有被注册的话,这种情况发生在引入绝对路径的第三方包,可以暂时将文件拷贝一份

四 总结

1 以上是一个融入drf框架的标准celery异步调用

原文地址:https://www.cnblogs.com/danhuangpai/p/11511029.html

时间: 2024-08-30 14:33:20

平台项目 ~ celery 异步之异步处理功能的相关文章

平台项目~celery 异步之定时任务功能

一 简介: 今天来聊聊celery的定时任务功能 二 标准流程: 1 配置config.py from celery.schedules import crontab CELERYBEAT_SCHEDULE = {       ' celery_test.tasks.test_run': {        'task': 'celery_test.tasks.test_run',        'schedule': crontab(minute='*/2')         }       

Celery+python+redis异步执行定时任务

我之前的一篇文章中写了[Celery+django+redis异步执行任务] 博文:http://blog.csdn.net/apple9005/article/details/54236212 你会发现,这些代码并不依赖django框架,随便写到一个py文件中,就可以轻松的执行成功,这是因为这些代码并没有用到django-celery,django-redis等依附于django框架的东西. 今天,参照官方文档示例,测试一下celery的异步执行定时任务如何.我先是在django框架内执行了一

电商平台项目

某电商平台项目开发要点记录 本文是博主在开发某电商平台项目的一些杂项记录,方便自己和团队同事查阅,偏向于具体技术或应用的细节和个人理解,但也未必非常具体.文中未提的更多内容可能会另起篇章. 导航属性--EF实体关系fluent配置 AutoMapper Autofac Repository模式 Model & DTO 开源&商用.NET电商平台--NopCommerce(3.9版) & Himall(2.4版) 服务器搭建-VMware vSphere Hypervisor(esx

网络远程教育实施方案交流之(二)——网络教育平台项目的建设

网络教育平台项目的建设的方案能够自建也能够採购.但项目是否成功,并终于能够落地发展,还须要业主方认真的调研和分析,最有效的方法就是利用项目管理的方法,从前期的需求分析.调研.可行性分析,立项,建设期成本.质量.进度三大管理,后期測试bugfree,维护.客服服务等. 管理内容看起来复杂,事实上理顺了非常easy,大道至简.下面先从功能模块入手,然后再介绍实践和经验,其目的是让没有经验的读者少走弯路,具有相关经验的管理者分享交流,共同推动此项事业的发展. 曾有人问我项目是不是资金投入越多越好?事实

C# 委托的三种调用示例(同步调用 异步调用 异步回调)

本文将主要通过同步调用.异步调用.异步回调三个示例来讲解在用委托执行同一个加法类的时候的的区别和利弊 首先,通过代码定义一个委托和下面三个示例将要调用的方法: public delegate int AddHandler(int a,int b); public class 加法类 { public static int Add(int a, int b) { Console.WriteLine("开始计算:" + a + "+" + b); Thread.Slee

由Trust Wallet理解以OA信用盘平台出售带杀大赔小功能太坊钱包管理和智能合约

钱包管理钱包管理就要提到OA信用盘平台出售带杀大赔小功能QQ2952777280 话仙论坛http://hxforum.com 一个类EtherKeystore, 应用的核心业务的处理类, 有钱包管理(创建.删除.导入.导出).助记词转化.签名工作.私钥管理等功能.EtherKeystore中使用了由Trust开源的了两个库: TrustKeystore: 用于管理钱包的通用以太坊密钥库.TrustCore: 区块链核心的数据结构和算法.还有CryptoSwift, 一个标准的安全加密算法集合的

平台项目 ~ element-vue-table

平台项目~element-table与vue一简介:前端两大基本功能之一,table的展示二 目的   后端传递数据到前端,这里有两种用法   1 表单仅仅是展示作用,不对每列做任何操作修饰   2 表单的一些列作格外处理    我们将分别说明三 第一种场景  表单仅仅展示,不对每列做任何操作修饰  核心思想 动态生成列  <el-table v-if=xianshi2 ref="multipleTable" :data="(data || []).slice((cur

基于Hadoop离线大数据分析平台项目实战

基于Hadoop离线大数据分析平台项目实战  课程学习入口:http://www.xuetuwuyou.com/course/184 课程出自学途无忧网:http://www.xuetuwuyou.com 课程简介: 某购物电商网站数据分析平台,分为收集数据.数据分析和数据展示三大层面.其中数据分析主要依据大数据Hadoop生态系统常用组件进行处理,此项目真实的展现了大数据在企业中实际应用. 课程内容 (1)文件收集框架 Flume ①Flume 设计架构.原理(三大组件) ②Flume 初步使

AppCan中标首都机场移动平台项目

近日,正益无线AppCan依托东方航空.吉祥航空.国家电网.中化集团等大客 户项目的丰富成功经验,凭借企业移动信息化建设的良好口碑.强大的移动化实施部署经验和快速响应的技术团队,在与多家国内外移动厂商比拼中,脱颖而出,成 功中标首都机场移动平台项目,全力护航首都机场各项业务移动化进程. 北京首都国际机场是"中国第一国门",是中国最重要.规模最大.设备最先进.运输生产最繁忙的大型国际航空港,是中国的空中门户和对外交流的重要窗口.北京首都国际机场的年旅客吞吐量从1978年的103万人次增长