博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Celery底层原理
阅读量:6772 次
发布时间:2019-06-26

本文共 572 字,大约阅读时间需要 1 分钟。

Celery的底层原理(透彻一些)?

celery是基于python实现的一个异步任务的调度工具,同时还是一个任务队列,主要用于处理耗时的任务。架构如下:

 

 

   celery架构由三个模块组成:消息中间件(message broker),任务执行单元(worker)和任务执行结果存储(task result store)组成。

消息中间件(Broker): 消息中间人,是任务调度队列,是一个独立的服务,是一个生产者消费者模式,生产者把任务放入队列中,消费者(worker)从任务队列中取出任务执行,任务的执行可以按照顺序依次执行也可以按照计划时间进行。但是Broker本身不提供队列服务,所以要集成第三方队列,推荐使用RatbbitMQ或Redis.

任务执行单元(worker):即执行任务的程序,可以有多个并发。它实时监控消息队列,获取队列中调度的任务,并执行它。

任务执行结果存储(task result store):由于任务的执行同主程序分开,如果主程序想获取任务执行的结果,就必须通过中间件存储。同消息中间人一样,存储也可以使用RabbitMQRedis另外,假如不需要保存执行的结果也可以不配置这个模块。

 

更对内容参考:

 

转载于:https://www.cnblogs.com/pythonlyz/p/10325640.html

你可能感兴趣的文章
Kafka pixy
查看>>
java.util.Date、java.sql.Date、java.sql.Time、java.sql.Timestamp小结
查看>>
Windows 7命令行映射网络驱动器
查看>>
AMR音频编码器概述及文件格式分析
查看>>
su和sudo用法学习整理
查看>>
省市县三级联动
查看>>
【高德地图API】从零开始学高德JS API(三)覆盖物
查看>>
IOS的UIScrollView的自动布局
查看>>
我的友情链接
查看>>
DHCP服务器配置
查看>>
Long integer Adder-大整数相加
查看>>
Docker用户指南 之(第二步) Hello world
查看>>
1052. Candy Sharing Game
查看>>
指令寄存器名词解释【一】
查看>>
Xcode6 中 设置安装KSImage 出现错误
查看>>
Yii框架官方指南系列33——扩展Yii:概览
查看>>
ASP.NET中前台javascript与后台代码调用
查看>>
First Blood
查看>>
2015年总结之什么叫软件开发?
查看>>
迈向虚拟化 硬件如何购买?
查看>>