最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Celery+django+redis異步執(zhí)行任務的實現(xiàn)示例

 更新時間:2025年04月23日 09:38:53   作者:皓陽當空  
本文主要介紹了Celery+django+redis異步執(zhí)行任務的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

本文用到的各工具版本:

  • celery 4.0.2
  • django 1.10.3
  • redis 3.2.6

特別注意:
如果你的項目是django框架,那么django-celery,celery-with-redis等等這些東西,都不要用了(這些東西會受python、celery版本的影響,我一直沒測通…)。直接pip安裝celery 4版本以上,pip安裝redis就完全可以的

1.安裝redis

二進制文件是編譯完成后在src目錄下,通過下面的命令啟動Redis服務:

$ src/redis-server

你可以使用內(nèi)置的客戶端命令redis-cli進行使用:

$ src/redis-cli
redis> set foo bar
OK
redis> get foo
“bar”

下載,解壓,編譯:

# wget http://download.redis.io/releases/redis-3.2.6.tar.gz
# tar xzf redis-3.2.6.tar.gz
# cd redis-3.2.6
# make
# src/redis-server   # 啟動redis服務,看清楚,這是在你的redis-3.2.6目錄下執(zhí)行的
# src/redis-cli   # 啟動客戶端

2.安裝celery,redis

# pip install celery
# pip install redis

3.創(chuàng)建一個task

在django app目錄中創(chuàng)建tasks.py:

import time
from celery import task

@task()
def add(x, y):
    return x + y

@task
def sendmail(mail):
    print "++++++++++++++++++++++++++++++++++++"
    print('sending mail to %s...' % mail['to'])
    time.sleep(2.0)
    print('mail sent.')
    print "------------------------------------"
    return mail['to']

4.開啟worker

# celery -A tasks worker --loglevel=info

注意: 上面命令中的tasks是你創(chuàng)建的task所在的python 文件名稱。如果你創(chuàng)建的這個tasks.py文件在app文件夾內(nèi),那么你要這么執(zhí)行:

# celery -A app.tasks worker --loglevel=info

注意:每次更改tasks.py文件中的代碼后,都要重新執(zhí)行此命令!

5.試一下

>>> from app.tasks import *
>>> sendmail.delay(dict(to='asd@as.com'))
<AsyncResult: 694b6fa8-a123-4c22-9ba2-b77d7cbb066f>
>>> add.delay(2, 15)
<AsyncResult: 42d34419-4a34-49ab-9627-45428eaaeb38>
>>> a=add.delay(1,1)
>>> a.ready()
True
>>> a.get()
2
>>> a=add.delay(10,5)
>>> a.get()
15

6.實例

# views.py

from app.tasks import add,sendmail

def task_workorder(request, id):
    """任務添加"""
    # ......你的代碼......
    sendmail.delay(dict(to='asd@as.com'))  #申請人提交后會給審批人發(fā)郵件
    # ......你的代碼......

注意:如果執(zhí)行成功,你運行celery -A app.tasks worker –loglevel=info命令的終端會打印一些內(nèi)容;如果執(zhí)行失敗,報一大把紅色代碼。。。那么恭喜你!出錯了!這種錯誤,一般都是與你傳的參數(shù)相關,尤其在django框架下,不要將queryset這種數(shù)據(jù)查詢結(jié)果直接傳遞。

到此這篇關于Celery+django+redis異步執(zhí)行任務的實現(xiàn)示例的文章就介紹到這了,更多相關Celery+django+redis異步執(zhí)行內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • PyQt6+pyqtgraph折線圖繪制顯示功能

    PyQt6+pyqtgraph折線圖繪制顯示功能

    文章介紹了如何在PyQt6中使用pyqtgraph庫繪制和顯示折線圖,本文通過實例代碼給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    2024-11-11
  • Python 判斷文件或目錄是否存在的實例代碼

    Python 判斷文件或目錄是否存在的實例代碼

    這篇文章主要介紹了Python 判斷文件或目錄是否存在的實例代碼,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-07-07
  • 基于django micro搭建網(wǎng)站實現(xiàn)加水印功能

    基于django micro搭建網(wǎng)站實現(xiàn)加水印功能

    這篇文章主要介紹了基于django micro搭建網(wǎng)站實現(xiàn)加水印功能,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-05-05
  • 使用Python將TS文件轉(zhuǎn)換為MP4的操作方法

    使用Python將TS文件轉(zhuǎn)換為MP4的操作方法

    在多媒體處理中,將不同格式的視頻文件進行轉(zhuǎn)換是一項常見的任務,TS(Transport Stream)是一種常用的流媒體格式,而MP4則是更為廣泛使用的通用視頻格式,本文將介紹如何使用Python和FFmpeg工具將TS文件轉(zhuǎn)換為MP4文件,需要的朋友可以參考下
    2025-04-04
  • Python結(jié)合OCR實現(xiàn)從掃描件PDF中提取文本

    Python結(jié)合OCR實現(xiàn)從掃描件PDF中提取文本

    掃描件 PDF 本質(zhì)是 “圖像集合”,無法直接復制或編輯文本,要提取其中的內(nèi)容,需借助OCR,下面我們就來看看如何通過 Python 結(jié)合 OCR 技術實現(xiàn)從掃描件 PDF 中提取文本吧
    2025-10-10
  • 對Python中數(shù)組的幾種使用方法總結(jié)

    對Python中數(shù)組的幾種使用方法總結(jié)

    今天小編就為大家分享一篇對Python中數(shù)組的幾種使用方法總結(jié),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • 深入淺析python繼承問題

    深入淺析python繼承問題

    這篇文章主要介紹了深入淺析python繼承問題的相關資料,非常不錯,感興趣的朋友一起看看吧
    2016-05-05
  • python實現(xiàn)事件驅(qū)動

    python實現(xiàn)事件驅(qū)動

    這篇文章主要為大家詳細介紹了python實現(xiàn)事件驅(qū)動的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • pycharm修改文件大小限制方式

    pycharm修改文件大小限制方式

    這篇文章主要介紹了pycharm修改文件大小限制方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2026-05-05
  • python并發(fā)場景鎖的使用方法

    python并發(fā)場景鎖的使用方法

    這篇文章主要介紹了python并發(fā)場景鎖的使用方法,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-07-07

最新評論

石嘴山市| 武清区| 苍梧县| 六盘水市| 遂平县| 武邑县| 剑河县| 同心县| 丰台区| 池州市| 英吉沙县| 塘沽区| 日照市| 华安县| 夏津县| 宁德市| 南通市| 西昌市| 剑川县| 南丰县| 峨眉山市| 金塔县| 缙云县| 巧家县| 苏州市| 江阴市| 都昌县| 延津县| 石河子市| 永兴县| 利川市| 白城市| 枣强县| 定西市| 芦溪县| 亚东县| 闽清县| 枣强县| 驻马店市| 宜黄县| 金沙县|