-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的更多相关文章

  1. 分布式异步框架celery

    Celery 1.什么是Clelery Celery是一个简单.灵活且可靠的,处理大量消息的分布式系统 专注于实时处理的异步任务队列 同时也支持任务调度 Celery架构 Celery的架构由三部分组 ...

  2. django celery的分布式异步之路(一) 起步

    如果你看完本文还有兴趣的话,可以看看进阶篇:http://www.cnblogs.com/kangoroo/p/7300433.html 设想你遇到如下场景: 1)高并发 2)请求的执行相当消耗机器资 ...

  3. Python开发【模块】:Celery 分布式异步消息任务队列

    Celery 前言: Celery 是一个 基于python开发的分布式异步消息任务队列,通过它可以轻松的实现任务的异步处理, 如果你的业务场景中需要用到异步任务,就可以考虑使用celery, 举几个 ...

  4. django celery的分布式异步之路(二) 高并发

    当你跑通了前面一个demo,博客地址:http://www.cnblogs.com/kangoroo/p/7299920.html,那么你的分布式异步之旅已经起步了. 性能和稳定性是web服务的核心评 ...

  5. [django]python异步神器-celery

    python异步神器celery https://segmentfault.com/a/1190000007780963

  6. Python极其简单的分布式异步作业管理系统RQ入门

    Python极其简单的分布式异步作业管理系统RQ入门 原创 2017-08-19 lixing 生信人 Python极其简单的分布式异步作业管理系统RQ入门 1. 什么是Job? Job直译过来就是工 ...

  7. 从两个模型带你了解DAOS 分布式异步对象存储

    摘要:分布式异步对象存储 (DAOS) 是一个开源的对象存储系统,专为大规模分布式非易失性内存 (NVM, Non-Volatile Memory) 设计,利用了 SCM(Storage-Class ...

  8. DAOS 分布式异步对象存储|架构设计

    分布式异步对象存储 (DAOS) 是一个开源的对象存储系统,专为大规模分布式非易失性内存 (NVM, Non-Volatile Memory) 设计,利用了SCM(Storage-Class Memo ...

  9. celery 分布式异步任务框架(celery简单使用、celery多任务结构、celery定时任务、celery计划任务、celery在Django项目中使用Python脚本调用Django环境)

    一.celery简介: Celery 是一个强大的 分布式任务队列 的 异步处理框架,它可以让任务的执行完全脱离主程序,甚至可以被分配到其他主机上运行.我们通常使用它来实现异步任务(async tas ...

随机推荐

  1. 如何知道局域网内哪些ip被占用

    诶,有时候真是略捉急,开始的时候估摸了一个网段,试了3个都没有通,觉得这个一个个试验的方法简直捉急到家了.下面就为大家分享3种简单地如何查看ip地址是否被占用的方法. 1.ping windows键+ ...

  2. x-www-form-urlencoded与multipart/form-data区别

    转载声明: http://blog.chinaunix.net/uid-7210505-id-329700.html 在Flex中,UrlRequest中的contentType默认值为 applic ...

  3. WPF Button 样式

    WPF CheckBox 自定义样式 给Button设置ToolTip <Style TargetType="{x:Type Button}" x:Key="Def ...

  4. WebSocket学习与使用

    1.WebSocket是什么 WebSocket是一种在单个TCP连接上进行全双工通信的协议,其目的是在浏览器和服务器之间建立一个不受限的双向通信的通道,使得服务器可以主动发送消息给浏览器.在HTML ...

  5. QT 信号槽connect中解决自定义数据类型或数组作为函数参数的问题——QT qRegisterMetaType 注册MetaType——关键:注册自定义数据类型或QMap等容器类

    一般情况下信号槽直接连接方式不会出现问题,但是如果信号与槽在不同线程或Qt::QueuedConnection方式连接,可能会在连接期间报以下类似问题,如: QObject::connect: Can ...

  6. python 读取mysql数据至csv文件中,并发送邮件

    test 代码: #coding:utf-8 ''' Created on 2019年2月18日 @author: Administrator ''' import ConfigParser impo ...

  7. 简单的 FastDFS + Nginx 应用实例

    版权声明:本文为GitChat作者的原创文章,未经 GitChat 同意不得转载. https://blog.csdn.net/GitChat/article/details/79479148 wx_ ...

  8. LiDAR、LAS、LAS Dataset与点云

    LiDAR Light Detection And Ranging,激光探测及测距,是一种光学遥感技术,使用激光对地球表面的密集采样,产生高精度X.Y.Z测量值. 激光雷达系统的主要硬件组成部分包括一 ...

  9. 关于pythoh面向过程开发人员三步转面向对象的补充,再加一步,四步走战略。转面向对象也可以有固定公式。

    前言: oop非常非常非常重要.搞不懂oop,就玩不了python,就算能写也一定是写代码时候喜欢靠猜瞎猫碰死老鼠写得心很虚.为什么这么说呢,我也是从面向过程编程到死走过来的,一路def到死,一看到有 ...

  10. Spring AOP @AspectJ 入门基础

    需要的类包: 1.一个简单的例子 Waiter接口: package com.yyq.annotation; public interface Waiter { void greetTo(String ...