Sobes.tech
Junior — Middle

Որ բաղադրիչն է պատասխանատու Celery-ում առաջադրանքների ստեղծման համար նրանց մեկնարկի ժամանակ։

sobes.tech AI

Պատասխան AI-ից

Celery-յում, այն բաղադրիչը, որը պատասխանատու է առաջադրանքների ստեղծման համար նրանց մեկնարկի ժամանակ, կոչվում է արտադրող (producer)։ Երբ դուք կանչում եք առաջադրանք, օրինակ task.delay(), Celery serializes the call of the task and places it in the message queue (broker), such as RabbitMQ կամ Redis։

Պրոցեսը հետևյալն է՝

  1. Կոդում առաջադրանքի կանչը ստեղծում է առաջադրանքի օբյեկտ՝ պարամետրերով։
  2. Արտադրողը serializes այս առաջադրանքը և ուղարկում է բրոքի։
  3. Celery աշխատողները գրանցվում են հերթին և ստանում են առաջադրանքները կատարելու համար։

Այսպիսով, արտադրողը՝ դա է Celery-ի հաճախորդի այն մասը, որը պատասխանատու է առաջադրանքների փաթեթավորելու և ուղարկելու համար հերթին։

Օրինակ՝ առաջադրանքի կանչի:

from celery import Celery

app = Celery('tasks', broker='redis://localhost')

@app.task
def add(x, y):
    return x + y

# Ստեղծել և ուղարկել առաջադրանքը հերթին
result = add.delay(4, 6)