celery的簡單應用

2021-09-24 05:04:02 字數 530 閱讀 1890

celery(芹菜)是乙個靈活可靠,處理大量資訊的分布式系統,主要有三部分構成:訊息中介軟體、任務執行單元(work)和任務執行結果儲存(task result store)組成。

celery 核心模組

celery有一下5個核心角色

task

就是任務,有非同步任務和定時任務

broker

中間人,接收生產者發來的訊息即task,將任務存入佇列。任務的消費者是worker。celery本身不提供佇列服務,推薦用redis或rabbitmq實現佇列服務。

worker

執行任務的單元,它實時監控訊息佇列,如果有任務就獲取任務並執行它。

beat

定時任務排程器,根據配置定時將任務傳送給broker。

backend

用於儲存任務的執行結果。

各個角色間的關係看下面這張圖理解一下:

celery簡單使用

1 新建tasks.py檔案,在該檔案內定義我們的功能函式,比如add from celery import celery tasks backend rpc broker redis localhost defadd x,y return x y 2 啟動redis作為訊息中介軟體,使用內建的rp...

celery專案中的應用

我的目錄結構是這樣的 就是參考celery官方教程寫的了.coding utf 8 from future import absolute import,unicode literals from celery import celery author liunan date 2020 12 16 ...

Django 中celery的簡單使用

celery的本質 通過提前建立的程序呼叫函式來實現非同步的任務。任務執行者 worker 提前建立的程序,呼叫對應的函式來實現非同步任務。任務發出者 傳送需要worker執行的任務函式的資訊。中間人 broker 任務佇列,儲存任務發出者發出的資訊。1 任務執行者 建立的程序 可以單獨在另一台電腦...