簡體   English   中英

將Celery任務保存到Django后端-清除一些混亂

[英]Saving Celery tasks to a Django backend - clearing some confusions

我開始使用Celery並將其與Django集成在一起,在那里我擁有兩者的最新版本。

settings.py配置Celery ,如下所示:

# Celery settings

BROKER_URL = 'amqp://guest:guest@localhost//'
CELERY_RESULT_BACKEND = 'djcelery.backends.database:DatabaseBackend'

#: Only add pickle to this list if your broker is secured
#: from unwanted access (see userguide/security.html)
CELERY_ACCEPT_CONTENT = ['json']
CELERY_TASK_SERIALIZER = 'json'
CELERY_RESULT_SERIALIZER = 'json'

djcelary已安裝。

現在,我要執行以下操作: 將已通過Celary的所有任務存儲在Django的數據庫中,並通過django admin檢查它們

為了做到這一點,我做了以下工作:

  • 使用-E運行Celary以捕獲事件
  • 運行python manage.py celarycam

之后,當我執行任務時,它們將被添加到數據庫管理員中。

但是,這讓我感到困惑:

  • 如果我沒有從manage.py運行celarycam ,則在admin中不會存儲任何內容(我正在admin的djcelary部分中的Tasks表中djcelary
  • 但是,如果我殺死Celary並重新啟動它,並使用先前的task_id要求結果,我會明白。

所以Celary Django的后端將任務存儲在某個地方,但是除非我打開celarycam ,否則我無法在管理員中看到任務。

為了在Django管理員中查看所有任務,該怎么做?

另外,我可以看到存儲在某個地方但未被celarycam捕獲的celarycam嗎?

歡迎任何可以消除我困惑的評論!

在Celery中, 支持Django后端遠程控制。

Django數據庫傳輸當前不支持:

  • 遠程控制命令(芹菜事件命令,廣播)
  • 事件,包括Django Admin監視器。
  • 使用多個工作者(可能導致多次執行消息)。

Django后端是實驗性經紀人 它可能起作用,但是它們沒有專用的維護器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM