分布式异步任务Celery
-A代表APP celery -A tasks worker --loglevel=info -n nodemaster -------------- celery@nodemaster v4.1.0 (latentcall)
---- **** -----
--- * *** * -- Darwin-17.3.0-x86_64-i386-64bit 2018-04-15 11:53:09
-- * - **** ---
- ** ---------- [config]
- ** ---------- .> app: tasks:0x110b42400
- ** ---------- .> transport: redis://localhost:6379/0
- ** ---------- .> results: disabled://
- *** --- * --- .> concurrency: 4 (prefork)
-- ******* ---- .> task events: OFF (enable -E to monitor tasks in this worker)
--- ***** -----
-------------- [queues]
.> celery exchange=celery(direct) key=celery [tasks]
. tasks.sendmail [2018-04-15 11:53:09,217: INFO/MainProcess] Connected to redis://localhost:6379/0
[2018-04-15 11:53:09,228: INFO/MainProcess] mingle: searching for neighbors
[2018-04-15 11:53:10,256: INFO/MainProcess] mingle: sync with 2 nodes
[2018-04-15 11:53:10,257: INFO/MainProcess] mingle: sync complete
[2018-04-15 11:53:10,270: INFO/MainProcess] celery@nodemaster ready. celery -A tasks inspect registered celery -A tasks inspect registered
-> celery@node2: OK
* tasks.sendmail
-> celery@nodemaster: OK
* tasks.sendmail Python 3.4.3 (default, Nov 6 2015, 22:26:48)
[GCC 4.2.1 Compatible Apple LLVM 6.1.0 (clang-602.0.53)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from tasks import sendmail
>>> sendmail.delay(dict(to='celery@python.org'))
<AsyncResult: b49534cd-472f-42da-934c-057e53e0d0a8>
>>> sendmail.delay(dict(to='celery@python.org'))
<AsyncResult: 99cd7565-612a-4b31-b025-de7b5c48673c>
>>> sendmail.delay(dict(to='celery@python.org'))
<AsyncResult: bd123165-d220-4552-bcb8-e009c76258d7>
>>> sendmail.delay(dict(to='celery@python.org'))
<AsyncResult: 01a8ef22-149c-4b24-8d92-f07468598646>
>>> sendmail.delay(dict(to='celery@python.org'))
<AsyncResult: e3b50542-d643-4b4c-bd71-5fb11d7915b7>
>>> sendmail.delay(dict(to='celery@python.org222222'))
<AsyncResult: ee225dd3-dea5-4013-907d-3dca5089c669>
>>> sendmail.delay(dict(to='celery@python.org2222223'))
<AsyncResult: e13d9de4-cd71-4aef-bc2c-bc4cc7dc3002>
>>> sendmail.delay(dict(to='celery@python.org2222227'))
<AsyncResult: 75a8c645-237c-4b64-831f-37936f71191f>
>>>
# tasks.py
import time
from celery import Celery celery = Celery('tasks', broker='redis://localhost:6379/0') @celery.task
def sendmail(mail):
print('....sending mail to %s...' % mail['to'])
time.sleep(20.0)
print('mail sent.')
~
分布式异步任务Celery的更多相关文章
- 分布式异步框架celery
Celery 1.什么是Clelery Celery是一个简单.灵活且可靠的,处理大量消息的分布式系统 专注于实时处理的异步任务队列 同时也支持任务调度 Celery架构 Celery的架构由三部分组 ...
- django celery的分布式异步之路(一) 起步
如果你看完本文还有兴趣的话,可以看看进阶篇:http://www.cnblogs.com/kangoroo/p/7300433.html 设想你遇到如下场景: 1)高并发 2)请求的执行相当消耗机器资 ...
- Python开发【模块】:Celery 分布式异步消息任务队列
Celery 前言: Celery 是一个 基于python开发的分布式异步消息任务队列,通过它可以轻松的实现任务的异步处理, 如果你的业务场景中需要用到异步任务,就可以考虑使用celery, 举几个 ...
- django celery的分布式异步之路(二) 高并发
当你跑通了前面一个demo,博客地址:http://www.cnblogs.com/kangoroo/p/7299920.html,那么你的分布式异步之旅已经起步了. 性能和稳定性是web服务的核心评 ...
- [django]python异步神器-celery
python异步神器celery https://segmentfault.com/a/1190000007780963
- Python极其简单的分布式异步作业管理系统RQ入门
Python极其简单的分布式异步作业管理系统RQ入门 原创 2017-08-19 lixing 生信人 Python极其简单的分布式异步作业管理系统RQ入门 1. 什么是Job? Job直译过来就是工 ...
- 从两个模型带你了解DAOS 分布式异步对象存储
摘要:分布式异步对象存储 (DAOS) 是一个开源的对象存储系统,专为大规模分布式非易失性内存 (NVM, Non-Volatile Memory) 设计,利用了 SCM(Storage-Class ...
- DAOS 分布式异步对象存储|架构设计
分布式异步对象存储 (DAOS) 是一个开源的对象存储系统,专为大规模分布式非易失性内存 (NVM, Non-Volatile Memory) 设计,利用了SCM(Storage-Class Memo ...
- celery 分布式异步任务框架(celery简单使用、celery多任务结构、celery定时任务、celery计划任务、celery在Django项目中使用Python脚本调用Django环境)
一.celery简介: Celery 是一个强大的 分布式任务队列 的 异步处理框架,它可以让任务的执行完全脱离主程序,甚至可以被分配到其他主机上运行.我们通常使用它来实现异步任务(async tas ...
随机推荐
- idea checkout 项目
1. 2.添加一个连接 选择远程目录checkout , 然后选择本地目录 但是这样会创建一个新的projectwindow 如果要创建为module的话 1.手动引入从svn check的 ...
- git 创建tag , 查看tag , 删除tag
简介 用git了很久了,也喜欢这个版本控制工具,今天来分享下,怎么用命令创建tag,查看tag,删除tag和把本地tag推到远程git服务器上 C:\Users\\WandaPuHuiProject ...
- C语言 · 数字黑洞
算法提高 数字黑洞 时间限制:1.0s 内存限制:256.0MB 问题描述 任意一个四位数,只要它们各个位上的数字是不全相同的,就有这样的规律: 1)将组成该四位数的四个数字由大到小 ...
- 织梦dedecms安全设置详情
第一.安装的时候数据库的表前缀,最好改一下,不用dedecms默认的前缀dede_,可以改成ljs_,随便一个名称即可. 第二.后台登录开启验证码功能,将默认管理员admin删除,改成一个自己专用的, ...
- R语言:recommenderlab包的总结与应用案例
R语言:recommenderlab包的总结与应用案例 1. 推荐系统:recommenderlab包整体思路 recommenderlab包提供了一个可以用评分数据和0-1数据来发展和测试推荐算 ...
- surface shader获取像素深度差值
void vert (inout appdata_full v, out Input i) { UNITY_INITIALIZE_OUTPUT(Input, i); i.proj = ComputeS ...
- 电子商务(电销)平台中订单模块(Order)数据库设计明细(转)
以下是自己在电子商务系统设计中的订单模块的数据库设计经验总结,而今发表出来一起分享,如有不当,欢迎跟帖讨论~ 订单表 (order)|-- 自动编号(order_id, 自增长主键)|-- 订单单号( ...
- Swagger UI 与SpringMVC的整合 II
pom.xml <!-- swagger开始 --> <dependency> <groupId>io.springfox</groupId> < ...
- 删除SQL架构的用户
ALTER AUTHORIZATION ON SCHEMA::db_owner TO db_owner
- Mac下,如何把项目托管到github
以前一直使用的是svn,如下图: 附个下载链接:链接: https://pan.baidu.com/s/1nv6z5XJ 密码: pwqe:不太熟悉的小伙伴可以参考我写的一篇本地搭建svn服务器的博客 ...