Celery基本介绍
生活随笔
收集整理的這篇文章主要介紹了
Celery基本介绍
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- Celery架構及介紹
- Celery的優點
- 版本支持情況
- 使用場景
Celery架構及介紹
項目開發中經常碰到需要使用異步任務的場景,比如一個WEB請求中有運行時間很長的業務運算,如果不采用異步任務,會阻塞當前的web請求,影響用戶體驗
Celery的架構由三部分組成,消息中間件(message broker),任務執行單元(worker) 和 任務執行結果存儲(task result store) 組成
消息中間件
Celery本身不提供消息服務,但是可以方便的和第三方提供的消息中間件集成。包括,RabbitMQ, Redis等等
任務執行單元
Worker是Celery提供的任務執行的單元,worker并發的運行在分布式的系統節點中。
任務結果存儲
Task result store用來存儲Worker執行的任務的結果,Celery支持以不同方式存儲任務的結果,包括AMQP, redis等
Celery的優點
1、簡單:一單熟悉了celery的工作流程后,配置和使用還是比較簡單的
2、高可用:當任務執行失敗或執行過程中發生連接中斷,celery 會自動嘗試重新執行任務
3、快速:一個單進程的celery每分鐘可處理上百萬個任務
4、靈活: 幾乎celery的各個組件都可以被擴展及自定制
版本支持情況
Celery version 4.0 runs onPython ?2.7, 3.4, 3.5?PyPy ?5.4, 5.5?This is the last version to support Python 2.7, and from the next version (Celery 5.x) Python 3.5 or newer is required.If you’re running an older version of Python, you need to be running an older version of Celery:Python 2.6: Celery series 3.1 or earlier.Python 2.5: Celery series 3.0 or earlier.Python 2.4 was Celery series 2.2 or earlier.Celery is a project with minimal funding, so we don’t support Microsoft Windows. Please don’t open any issues related to that platform.使用場景
-
異步任務:將耗時操作任務提交給Celery去異步執行,比如發送短信/郵件、消息推送、音視頻處理等等
-
定時任務:定時執行某件事情,比如每天數據統計
總結
以上是生活随笔為你收集整理的Celery基本介绍的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Nginx负载均衡常用配置
- 下一篇: Celery组件架构介绍