Сначала проследите один запрос по всем этапам генерации PDF и измерьте время каждого: очередь, данные, шаблон, рендерер, сохранение и скачивание.
Как бы вы расследовали проблему, при которой генерация PDF-отчёта по запросу пользователя иногда работает слишком долго, иногда не завершается, а пользователи получают тайм-аут? У вас есть доступ к фронтенду, бэкенду и инфраструктуре.
Сначала проследите один запрос по всем этапам генерации PDF и измерьте время каждого: очередь, данные, шаблон, рендерер, сохранение и скачивание.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Сначала проследите один запрос по всем этапам генерации PDF и измерьте время каждого: очередь, данные, шаблон, рендерер, сохранение и скачивание.
Сопоставьте быстрые и зависшие случаи, объём отчёта, нагрузку, память, внешние ресурсы и timeout каждого слоя. Для долгой операции рассмотрите фоновые задания со статусом и ограничением времени. Не лечите проблему только увеличением timeout: проверьте утечки, блокировки и повторные запуски.