Встречается на собеседованиях • сегодня

Как Celery взаимодействует с основным приложением

Celery работает асинхронно через брокер сообщений (RabbitMQ, Redis и др.). Основное приложение отправляет задачи в очередь брокера, а Celery Worker забирает их оттуда и выполняет. Результаты можно получить через бэкенд (например, Redis или Django ORM).

Пример:

python
# tasks.py
from celery import Celery

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

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

# Основное приложение
result = add.delay(4, 5)  # Отправка задачи
print(result.get())  # Получение результата (блокирующий вызов)

Ключевые моменты:

  1. Основное приложение и Celery Worker работают независимо
  2. Общение происходит через брокер сообщений
  3. Результаты можно получать синхронно или асинхронно
  4. Celery поддерживает retry, scheduled tasks и другие продвинутые функции
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы