django+celery+ RabbitMQ实现异步任务实例
背景
django要是针对上传文件等需要异步操作的场景时,celery是一个非常不错的选择。笔者的项目就是使用了这个组合,这里就做一个备忘吧。
安装RabbitMQ
这个安装及使用我已经在前一篇文档中介绍过了,需要的朋友请翻阅我的前一篇文章。这里只需要记住,celery要是使用rabbitMQ的话,需要启动服务的。
具体方法:
rabbitmq-server /usr/local/etc/redis.conf
celert的安装和使用:
这个在我的前面文章中也做了记录,想知道的朋友请看前面的文章。这里只需要知道,在django服务启动之后,才可以启动celery,启动命令如下:
celery -A myapp worker -l info
django下使用celery的步骤
这里有几个地方需要注意一下:
- 工程目录下新建:celery.py
- 同目录下__init__.py文件下增加celery的引用
- app中添加tasks.py 并添加内容
- view视图中触发任务
详细的步骤参考:经典案例
备注
django使用,先启动rabbitmq: rabbitmq-server /usr/local/etc/redis.conf
启动django的服务:python manger.py runserver
启动celery客户端;celery -A myapp worker -l info
参考文档
参考文档:经典案例
django+celery+ RabbitMQ实现异步任务实例的更多相关文章
- 如何使用django+celery+RabbitMQ实现异步执行
1)安装需要安装RabbitMQ.Celery和Django-celeryCelery和Django-celery的安装直接pip就好 2)修改settings.py在INSTALLED_APPS中加 ...
- 使用django+celery+RabbitMQ实现异步执行
http://www.yu180.com/group/view/259 推荐一个解决框架 https://github.com/maccman/juggernaut Realtime server p ...
- Django+Celery+xadmin实现异步任务和定时任务
Django+Celery+xadmin实现异步任务和定时任务 关注公众号"轻松学编程"了解更多. 一.celery介绍 1.简介 [官网]http://www.celerypro ...
- django+celery +rabbitmq
celery是一个python的分布式任务队列框架,支持 分布的 机器/进程/线程的任务调度.采用典型的生产者-消费者模型 包含三部分:1. 队列 broker :可使用redis ,rabbitmq ...
- django celery的分布式异步之路(一) 起步
如果你看完本文还有兴趣的话,可以看看进阶篇:http://www.cnblogs.com/kangoroo/p/7300433.html 设想你遇到如下场景: 1)高并发 2)请求的执行相当消耗机器资 ...
- Django+celery+rabbitmq实现邮件发送
一.环境 1.pip包 amqp==2.4.2 anyjson==0.3.3 billiard==3.6.0.0 celery==4.3.0 Django==2.2 dnspython==1.16.0 ...
- django celery的分布式异步之路(二) 高并发
当你跑通了前面一个demo,博客地址:http://www.cnblogs.com/kangoroo/p/7299920.html,那么你的分布式异步之旅已经起步了. 性能和稳定性是web服务的核心评 ...
- Django+Celery+Redis实现异步任务(发送邮件)
安装如下依赖库 pip install Celery pip install django-celery pip install django-redis 还要安装本地的Redis服务 setting ...
- django celery异步框架
描述:实现运维平台的异步执行与定时任务,以下简单描述了安装过程及使用. 安装django和celery pip install django pip install celery pip inst ...
随机推荐
- ipfs camp course c demo exercise 1
目录 aim: my bugs 解决ipfs 的 cros 问题的方法 result final code for c1 aim: 首先咱们把 broswer 和 自己的api 连接起来(要显示出来自 ...
- SpringBoot学习笔记(二)——Springboot项目目录介绍
官网生成SpringBoot项目 使用官网(https://start.spring.io/)生成一个Maven构建的的SpringBoot项目,下载下来的文件是这个样子的. 导入到IDEA中 为了查 ...
- MySQL自动备份实战--xtrabackup备份
MySQL数据备份企业实战.制作shell脚本 功能1:使用xtrabackup以每周为一个备份周期做备份(数据库+二进制日志,备份至本地/data/backup).提示: 周一某个时间点做一次完全备 ...
- ECS 系统 Entity-Component-System
已经推出了很久了, 貌似也有一些人开始使用, 我是在看守望先锋的程序设计相关文章的时候看到 ECS 的, 从它的设计逻辑上看, 核心就是 Composition over inheritance (o ...
- iOS中统计平台的使用
iOS腾讯Bugly使用 https://www.jianshu.com/p/f672e0d202ef iOS 百度统计的使用技巧 https://blog.csdn.net/yy1992320/a ...
- Android获取当前时间的3中方法总结
今天听了一在线公开课,任务是做一个数字时钟,其中最关键的自然是获取当前的系统时间.做个简单的记录,如下: 1. Time time = new Time("GMT+8"); tim ...
- js判断对象中是否存在某一项和判断是否是对象
1.判断是否为对象 let str = { name: '第一', age: 12 } console.log(typeof str== "object") 2.判断对象中是否有某 ...
- 吴裕雄--天生自然ORACLE数据库学习笔记:PL/SQL编程
set serveroutput on declare a ; b ; c number; begin c:=(a+b)/(a-b); dbms_output.put_line(c); excepti ...
- 3 (mysql实战) 事务隔离
提到事务,你肯定不陌生,和数据库打交道的时候,我们总是会用到事务.最经典的例子就是转账,你要给朋友小王转 100 块钱,而此时你的银行卡只有 100 块钱. 转账过程具体到程序里会有一系列的操作,比如 ...
- 「ZJOI2007」捉迷藏
题目描述 给出一棵\(N\)个有色(黑白,黑色对应关灯,白色对应开灯)节点的树以及\(M\)次操作,每次操作将改变一个节点的颜色或者求出树上最远的两个白点距离 基本思路 \(60pts\)做法 这道题 ...