【Python】Celery基本使用

celery的基本使用celery是一个简单、灵活且可靠的,处理大量消息的分布式系统,专注于处理异步任务队列,同时也支持任务调度。
摘要由CSDN通过智能技术生成

目录

初识celery

说明

celery的框架由三部分组成:

使用场景

使用优点

安装及使用

安装

案例演示

1. 创建项目celerypro

2. 创建异步任务执行文件celery_task

3. 使用命令启动celery

4. 执行测试函数

5. 异步获取结果


初识celery

celery是一个简单、灵活且可靠的,处理大量消息的分布式系统,专注于处理异步任务队列,同时也支持任务调度。

说明

  1. 分布式系统:一个系统应用由不同的组件构成,我们将不同组件架构在不同的服务器中,不同组件之间通过消息通信的方式来实现协调工作。
  2. 图中user指的是django或者flask这样的框架,接收请求之后需要进行处理。
  3. 图中AMQPbroker指的是中间件,我们可以用RabbitMQ或者Redis来承担相关工作。
  4. 图中celery workers值得是celery,它作为消费者监听中间件中的任务,这里就需要用到并发的操作了,celery实现了并发(进程+协程),我们只需要调用就可以了。

celery的框架由三部分组成:

  • 消息中间件(message broker)
    •  Celery本身不提供消息服务,但是可以方便的和第三方提供的消息中间件集成。包括,RabbitMQ, Redis等等。
    •     官方推荐用rabbitMQ,因为它持久稳定。
  • 任务执行单元(worker)
    •  Worker是Celery提供的任务执行的单元,worker并发的运行在分布式的系统节点中。
  • 任务执行结果存储(task result store)
    •  Task result store用来存储Worker执行的任务的结果,Celery支持以不同方式存储任务的结果,包括AMQP, redis等

另外, Celery还支持不同的并发和序列化的手段

  • 并发:Prefork, Eventlet, gevent, threads/single threaded
  • 序列化:pickle, json, yaml, msgpack. zlib, bzip2 compression, Cryptographic message signing 等等

使用场景

celery是一个强大分布式任务队列的异步处理框架,它可以让任务的执行完全脱离主程序,甚至可以被分配到其

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值