celery——简介及安装

一、简介

注意:python中执行定时任务:APScheduler ----》公司里使用的比较多

1 celery:芹菜(中文名芹菜其实跟芹菜没有任何关系)
2 python中的一个分布式异步任务框架
    -执行异步任务---(对立:同步任务):解决耗时任务,将耗时操作任务提交给Celery去异步执行,比如发送短信/邮件、消息推送、音视频处理等等
    -执行延时任务(5分钟后干一件事):解决延迟任务
    -执行定时任务:每天,隔几分钟,干什么事:解决周期(周期)任务,比如每天数据统计
3 解释(不支持windows)
Celery is a project with minimal funding, so we don’t support Microsoft Windows. Please don’t open any issues related to that platform.

4 celery特点(了解)
    1)可以不依赖任何服务器,通过自身命令,启动服务(内部支持socket)
    2)celery服务为为其他项目服务提供异步解决任务需求的

5 Celery架构
    Celery的架构由三部分组成,消息中间件(message broker)、任务执行单元(worker)和 任务执行结果存储(task result store)组成
    
    #消息中间件(用celery做集群首先要在消息中间件搭建redis集群,或者rbbitMQ或其他或自己写程序)
Celery本身不提供消息服务,但是可以方便的和第三方提供的消息中间件集成。包括,RabbitMQ, Redis等等

    # 任务执行单元(没有集群这里一说)
Worker是Celery提供的任务执行的单元,worker并发的运行在分布式的系统节点中。

    worker没执行,那么任务就一直在堆积

    worker可以在不同的节点,不同的机器上(因为是分布式异步任务)

# 任务结果存储
Task result store用来存储Worker执行的任务的结果,Celery支持以不同方式存储任务的结果,包括AMQP, redis等

 

 二、网址

Celery 官网:http://www.celeryproject.org/

Celery 官方文档英文版:http://docs.celeryproject.org/en/latest/index.html

Celery 官方文档中文版:http://docs.jinkan.org/docs/celery/

Celery是一个简单、灵活且可靠的,处理大量消息的分布式系统

专注于实时处理的异步任务队列

同时也支持任务调度

三、安装

pip install celery==4.4.0

 因为windows平台启动worker需要安装 eventlet模块,命令 pip install  eventlet 

启动worker时celery不能用5.0及以上版本,因为已经弃用

原文地址:https://www.cnblogs.com/guojieying/p/14278831.html