django+celery+ RabbitMQ實現異步任務實例


背景

  django要是針對上傳文件等需要異步操作的場景時,celery是一個非常不錯的選擇。筆者的項目就是使用了這個組合,這里就做一個備忘吧。

安裝RabbitMQ

  這個安裝及使用我已經在前一篇文檔中介紹過了,需要的朋友請翻閱我的前一篇文章。這里只需要記住,celery要是使用rabbitMQ的話,需要啟動服務的。
具體方法:
rabbitmq-server /usr/local/etc/redis.conf

celert的安裝和使用:

  這個在我的前面文章中也做了記錄,想知道的朋友請看前面的文章。這里只需要知道,在django服務啟動之后,才可以啟動celery,啟動命令如下:
celery -A myapp worker -l info

django下使用celery的步驟

  這里有幾個地方需要注意一下:

  • 工程目錄下新建:celery.py
  • 同目錄下__init__.py文件下增加celery的引用
  • app中添加tasks.py 並添加內容
  • view視圖中觸發任務
    詳細的步驟參考:經典案例

備注

  django使用,先啟動rabbitmq: rabbitmq-server /usr/local/etc/redis.conf
啟動django的服務:python manger.py runserver
啟動celery客戶端;celery -A myapp worker -l info

參考文檔

  參考文檔:經典案例


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM