1.什么是celery:

  • celery是一种灵活且可靠的,处理大量消息的分布式系统

    • 分布式系统就是多个计算机节点之间协同完成某个任务

  • 是一种专注于实时处理的任务队列,支持任务调度

    • 机制,线程或者机器间分发任务的一种机制

  • 是开源的,有广泛、多样的用户与贡献者社区

  • Celery 是用 Python 编写的

2.celery的使用场景

  • 异步任务:一些比较耗时的操作可以交给celery去执行,而不用等着程序处理完才知道结果,比如视频转码等的处理,邮件的发送,消息推送等

  • 定时任务:比如定时推送消息,定时爬取数据,定时统计数据等等

3.celery的执行过程

我们把celery的一个执行单元叫做task(任务)

  • 生产者:application(task producer) ------ >

  • 任务队列:broker(task queue) redis或者rabbitmq做消息中间件

  • 任务调度:celery beat(task scheduler) 对任务队列中的任务进行调度

  • 消费者:worker(task consumer) 多个消费者

  • 处理结果的存储:backend 数据库,缓存都可以

4.pycharm的配置

  • vim编辑模式的配置

  • 代码同步

  • 使用远程环境