欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Django中使用celery完成異步任務(wù)的示例代碼

 更新時(shí)間:2018年01月23日 14:22:15   作者:AustinKuture  
本篇文章主要介紹了Django中使用celery完成異步任務(wù)的示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

本文主要介紹如何在django中用celery完成異步任務(wù),web項(xiàng)目中為了提高用戶體驗(yàn)可以對(duì)一些耗時(shí)操作放到異步隊(duì)列中去執(zhí)行,例如激活郵件,后臺(tái)計(jì)算操作等等 當(dāng)前項(xiàng)目環(huán)境為: django==1.11.8 celery==3.1.25 redis==2.10.6 pip==9.0.1 python3==3.5.2 django-celery==3.1.17

一,創(chuàng)建Django項(xiàng)目及celery配置

1,創(chuàng)建Django項(xiàng)目

1>打開(kāi)終端輸入:django-admin startproject TestCelery 創(chuàng)建django項(xiàng)目('TestCelery'是項(xiàng)目名稱(chēng))

2>進(jìn)行TestCelery在終端輸入指令:django-admin startapp testcelery 創(chuàng)建應(yīng)用('testcelery為應(yīng)用名稱(chēng)')

2, 為celery設(shè)置環(huán)境變量

1>項(xiàng)目中在TestCelery中創(chuàng)建celery.py文件(與setting.py同級(jí))輸入以下內(nèi)容:         

from celery import Celery
from django.conf import settings
import os

# 為celery設(shè)置環(huán)境變量
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'TestCelery.settings')

# 創(chuàng)建應(yīng)用
app = Celery('testcelery')

# 酸配置應(yīng)用
app.conf.update(
  
  # 本地Redis服務(wù)器
  BROKER_URL='redis://127.0.0.1:6379/2',
)

app.autodiscover_tasks(settings.INSTALLED_APPS)

2>當(dāng)前項(xiàng)目目錄如下圖所示:

                                 

二,創(chuàng)建任務(wù)tasks,編寫(xiě)視圖View及urls

1, 在testcelery應(yīng)用中新建tasks.py文件,并寫(xiě)入要進(jìn)行處理的任務(wù):         

from TestCelery.celery import app
from time import sleep
@app.task
def start_running(nums):
  print('***>%s<***' %nums)
  print('--->>開(kāi)始執(zhí)行任務(wù)<<---')
  for i in range(10):
    print('>>'*(i+1))
    sleep(1)
  print('>---任務(wù)結(jié)束---<')

2,編寫(xiě)view視圖,并寫(xiě)入調(diào)用client的方法

from django.views import View
from django.http import HttpResponse
from .tasks import start_running
from time import sleep
# Create your views here.

class IdexView(View):
  def get(self, request):
    print('>=====開(kāi)始發(fā)送請(qǐng)求=====<')
    for i in range(10):
      print('>>',end='')
      sleep(0.1)

    start_running.delay('》》》》》我是傳送過(guò)來(lái)的《《《《《')
    return HttpResponse('<h2> 請(qǐng)求已發(fā)送 </h2>')

3,編寫(xiě)testcelery應(yīng)用的usrls

from django.conf.urls import url
from .views import *
urlpatterns = [
  url(r'^$', IdexView.as_view()),
]

4,當(dāng)前項(xiàng)目目錄如下圖所示:

 

三,運(yùn)行項(xiàng)目,開(kāi)啟worker

1, 運(yùn)行項(xiàng)目在當(dāng)前項(xiàng)目下輸入啟動(dòng)服務(wù)指令:python manager.py runserver,出現(xiàn)如下圖所示即代表運(yùn)行成功:

2,開(kāi)啟worker另在當(dāng)前項(xiàng)目下另打開(kāi)一個(gè)終端,輸入指令: celery -A TestCelery worker --loglevel=DEBUG,啟動(dòng)后如下如示:

 

3,調(diào)用任務(wù)

1>打開(kāi)瀏覽器,輸入http://127.0.0.1:8000/send/  進(jìn)行訪問(wèn)

2> woker監(jiān)聽(tīng)到任務(wù)請(qǐng)求時(shí),就會(huì)執(zhí)行耗時(shí)任務(wù),如下圖所示:

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 在Django的session中使用User對(duì)象的方法

    在Django的session中使用User對(duì)象的方法

    這篇文章主要介紹了在Django的session中使用User對(duì)象的方法,Django是眾Python web開(kāi)發(fā)框架中人氣最高的一個(gè),需要的朋友可以參考下
    2015-07-07
  • Python中的GIL全局解釋器鎖多線程編程的隱患剖析

    Python中的GIL全局解釋器鎖多線程編程的隱患剖析

    Python作為一門(mén)強(qiáng)大而靈活的編程語(yǔ)言,吸引了大量的開(kāi)發(fā)者,然而,對(duì)于多線程編程來(lái)說(shuō),Python引入了一個(gè)概念——全局解釋器鎖(Global Interpreter Lock,簡(jiǎn)稱(chēng)GIL),它在一定程度上影響了多線程程序的性能,本文將深入探討GIL的概念,它對(duì)多線程編程的影響以及如何處理與繞過(guò)它
    2023-10-10
  • numpy數(shù)組合并和矩陣拼接的實(shí)現(xiàn)

    numpy數(shù)組合并和矩陣拼接的實(shí)現(xiàn)

    這篇文章主要介紹了numpy數(shù)組合并和矩陣拼接的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • Python實(shí)現(xiàn)抓取HTML網(wǎng)頁(yè)并以PDF文件形式保存的方法

    Python實(shí)現(xiàn)抓取HTML網(wǎng)頁(yè)并以PDF文件形式保存的方法

    這篇文章主要介紹了Python實(shí)現(xiàn)抓取HTML網(wǎng)頁(yè)并以PDF文件形式保存的方法,結(jié)合實(shí)例形式分析了PyPDF2模塊的安裝及Python抓取HTML頁(yè)面并基于PyPDF2模塊生成pdf文件的相關(guān)操作技巧,需要的朋友可以參考下
    2018-05-05
  • 解決Django Static內(nèi)容不能加載顯示的問(wèn)題

    解決Django Static內(nèi)容不能加載顯示的問(wèn)題

    今天小編就為大家分享一篇解決Django Static內(nèi)容不能加載顯示的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-07-07
  • Python傳統(tǒng)圖像處理之皮膚區(qū)域檢測(cè)詳解

    Python傳統(tǒng)圖像處理之皮膚區(qū)域檢測(cè)詳解

    這篇文章主要介紹了在不同情景下對(duì)傳統(tǒng)圖像進(jìn)行皮膚區(qū)域檢測(cè),文章中的代碼具有一定的參考價(jià)值,感興趣的小伙伴可以跟隨小編一起來(lái)學(xué)習(xí)學(xué)習(xí)
    2021-12-12
  • Python實(shí)現(xiàn)二叉搜索樹(shù)BST的方法示例

    Python實(shí)現(xiàn)二叉搜索樹(shù)BST的方法示例

    這篇文章主要介紹了Python實(shí)現(xiàn)二叉搜索樹(shù)BST的方法示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • 一篇文章教你用python畫(huà)動(dòng)態(tài)愛(ài)心表白

    一篇文章教你用python畫(huà)動(dòng)態(tài)愛(ài)心表白

    這篇文章主要給大家介紹了關(guān)于如何用python畫(huà)動(dòng)態(tài)愛(ài)心表白的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • OpenCV實(shí)戰(zhàn)之AI照片背景替換

    OpenCV實(shí)戰(zhàn)之AI照片背景替換

    不少人在生活中都有摳人像圖換背景的需求。本文將為大家介紹一個(gè)更快的方法,即利用OpenCV實(shí)現(xiàn)AI照片背景替換,感興趣的小伙伴可以試一試
    2022-01-01
  • Python使用pandas導(dǎo)入csv文件內(nèi)容的示例代碼

    Python使用pandas導(dǎo)入csv文件內(nèi)容的示例代碼

    這篇文章主要介紹了Python使用pandas導(dǎo)入csv文件內(nèi)容,本文結(jié)合示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-12-12

最新評(píng)論