跳转至

理解Celery

Celery 是一个框架,该框架提供机制来简化构建分布式系统的过程。 Celery 框架通过在作为网络互连的机器或本地网络之间交换消息来使用工作单元(tasks)分布的概念。 任务是 Celery 中的关键概念; 我们必须分发的任何类型的工作都必须事先封装在任务中。

为什么使用Celery

它以透明的方式在分布在 Internet 上的工作人员或本地工作人员之间分配任务

Celery有如下优点:

  • 它以透明的方式在网络上分布的worker或本地网络之间分配任务
  • 它通过设置(进程、线程、Gevent、Eventlet)以一种简单的方式改变了worker的并发性
  • 支持同步、异步、周期、定时任务
  • 它会在出现错误时重新执行任务

很多开发者都认为同步任务(synchronous tasks)和实时任务(real-time tasks)是一样的,实际上它们是完全不同的。对于实时任务,它有一个时间窗口,任务执行必须在Deadline之前完成。如果经过分析,任务在时间窗口内完成不了,那么它将被终止或者暂停直到下次能够完成,而同步任务是当任务执行完后才返回结果。


最后更新: 2023年3月6日
创建日期: 2023年3月6日