Встречается на собеседованиях • сегодня
Как исполнишь фоновую задачу, если нет Celery
Для выполнения фоновых задач без Celery можно использовать несколько подходов:
- Threading (для I/O-bound задач):
python
from threading import Thread
import time
def background_task():
time.sleep(5)
print("Task completed")
thread = Thread(target=background_task)
thread.start()
print("Main thread continues")- Multiprocessing (для CPU-bound задач):
python
from multiprocessing import Process
def cpu_intensive_task():
# тяжелые вычисления
pass
process = Process(target=cpu_intensive_task)
process.start()- Asyncio (для асинхронных операций):
python
import asyncio
async def async_task():
await asyncio.sleep(1)
print("Async task done")
asyncio.create_task(async_task())- APScheduler (для периодических задач):
python
from apscheduler.schedulers.background import BackgroundScheduler
scheduler = BackgroundScheduler()
scheduler.add_job(my_task, 'interval', minutes=30)
scheduler.start()Для простых случаев хватит threading/multiprocessing. Для сложных сценариев (очереди, повторные попытки) лучше использовать RQ (Redis Queue) или Huey - легкие альтернативы Celery.

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