Вечер, Мост гудит. Редактор жмёт «Опубликовать», и кнопка думает четыре секунды. Потом пять. Кельса открывает журнал почтового сервера: каждое письмо подписчикам уходит прямо в ответе на публикацию, и почта Моста по вечерам отвечает медленно.
Квот и Кельса говорят о двух разных вещах, и обе есть в этом уроке. Async-представление помогает, когда запрос ждёт ввода-вывода и за время ожидания процесс мог бы обслужить других. Фоновая задача помогает, когда работу вообще не нужно делать в ответе: ответить сразу, а письмо отправить потом. И у фоновой задачи есть своя ловушка: «потом» должно наступить только после фиксации транзакции. Сегодня ты сделаешь ленту блога асинхронной, вынесешь письмо в задачу django.tasks и привяжешь её к фиксации через on_commit.
урок из курса
Урок из курса «Python backend: Тарбадель». Курс покупается один раз и остаётся навсегда: 500 ₽.
Оплата пока не подключена: премиум и курсы открываются промокодом.