[英]How to push and pop tasks of the queue in celery
我想將大量圖像保存到圖像服務器。 我需要將所有圖像信息請求排隊以使用Celery保存它們。我使用Django框架。 我閱讀了Celery的文檔,並在Django中對其進行了配置,並且還創建了一個名為“ images”的隊列,但是我不知道如何將圖像信息放入該隊列並發送消息以將其保存並從中刪除。保存后排隊。 我在Celery文檔的隊列中找不到任何用於推送和彈出任務的命令。
這是我配置芹菜的代碼:
from kombu import Exchange, Queue
from celery import Celery
import os
class CeleryQueue:
def celery_queue(self):
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'DataScience.settings')
app = Celery('images', broker='amqp://localhost')
app.config_from_object('django.conf:settings', namespace='CELERY')
app.autodiscover_tasks()
image_exchange = Exchange('media', type='direct')
app.conf.task_default_queue = 'images'
app.conf.task_default_exchange_type = 'direct'
app.conf.task_default_routing_key = 'media.image'
app.conf.task_queues = (Queue('images', image_exchange,routing_key=app.conf.task_default_routing_key))
感謝您的任何幫助
我認為您在閱讀文檔時感到困惑。 隊列用於存儲任務。 任務被編寫為函數,並以@task修飾。 因此,當您調用任務時,請使用task_name.delay(parameters)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.