背景
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
參考文檔
參考文檔:經典案例