IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> celery简易使用 -> 正文阅读

[大数据]celery简易使用

celery是分布式任务处理模块,可以实现异步和定时任务。由5大部分组成,但是celery的broker不提供存储,需要其他存储方法,如用redis rabbitmq等等。

新版需要安装下面两个

pip install celery

pip install eventlet

下面是一个简单的demo

# single-simple-demo.py 的内容


from celery import Celery

my_task = Celery(main='single-simple-demo'  # 要和文件的名字一致,是task名字的一部分
                 , broker='redis://localhost:6379/0'  # 存储接收任务的数据库或mq
                    , backend='redis://localhost:6379/0'  # 存储任务处理结果的数据库或mq
                    , include=['single-simple-demo'])  #适用于寻找目录中所有的task

# 为应用创建任务, 有没有输入参数 和 有没有返回值,可以自己定
@my_task.task
def test_task(n, r):
    open('test.txt', 'a').write(n + '\n')
    print(n)
    return r


if __name__ == '__main__':
    import random, time
    # 此处开始异步调用任务,
    res = test_task.delay(f'==== 传递的任务参数 =====', random.randint(0, 10000))
    print(res.id)
    # 返回的结果可以通过taskid查询
    from celery.result import AsyncResult
    async_task = AsyncResult(id=res.id, app=my_task)
    time.sleep(1)
    # 判断异步任务是否执行成功
    if async_task.successful():
        # 获取异步任务的返回值
        result = async_task.get()
        print(result)
    else:
        print("任务还未执行完成")

上面代码里已经做了解释。

另外:worker的运行可以通过命令行方式运行 (重点:在single-simple-demo.py同级目录下cmd运行)

celery -A single-simple-demo ?worker --loglevel=info -P eventlet

定时器任务如下链接:

Celery-python下定时任务模块 - y0um - 博客园

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-01-01 13:58:47  更:2022-01-01 14:00:55 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 13:38:06-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码