Встречается на собеседованиях • сегодня
Зачем нужен Celery в Django
Celery — это распределённая очередь задач, которая позволяет выполнять фоновые и асинхронные операции вне основного потока Django. Это особенно полезно для:
- Долгих задач (обработка файлов, отправка email, API-запросы)
- Периодических задач (cron-like задачи через
celery beat) - Масштабирования (распределение нагрузки между воркерами)
Пример:
python
# tasks.py
from celery import shared_task
@shared_task
def send_welcome_email(user_id):
user = User.objects.get(id=user_id)
send_mail("Welcome!", "Hi!", "admin@site.com", [user.email])
# views.py
def register(request):
user = create_user(request.POST)
send_welcome_email.delay(user.id) # Задача выполнится в фоне
return HttpResponse("OK")Без Celery такие задачи блокируют HTTP-ответ, увеличивая время загрузки страницы.
Брокеры сообщений: Redis, RabbitMQ (для хранения задач).
Альтернативы: Django-Q, Huey (для простых случаев).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы