任务调度:Celery

Celery是一个纯Python开发的分布式任务调度模块,专注于任务队列的实时处理,并且支持任务调度,能够处理大量消息。Celery本身不包含任何消息服务,可以使用第三方消息服务来传递任务,它支持的消息服务包括RabbitMQ、Redis和数据库,这其中Redis是最佳选择。

Celery可以通过pip install celery来完成安装。如果使用Redis作为消息服务(消息中间人),则可以使用pip install -U celery[redis]来捆绑安装依赖。在生产环境下推荐采用RabbtMQ作为消息中间人,因为Redis在没有开启数据持久化之前,容易受到断电等情况带来的数据丢失影响。