Как связать компоненты сервиса генерации отчётов

Клиент создаёт задачу через API, worker получает её из очереди, строит файл и сохраняет результат. API отдаёт статус и контролируемую ссылку на скачивание только владельцу.

Короткий ответ

Что ответить на собеседовании

Клиент создаёт задачу через API, worker получает её из очереди, строит файл и сохраняет результат. API отдаёт статус и контролируемую ссылку на скачивание только владельцу.

Подробный разбор

Ответ с пояснениями

Условие

Есть веб-клиент, API, БД задач, очередь, worker и хранилище файлов. Опишите путь запроса на большой отчёт и последующее скачивание.

Ответ

Клиент создаёт задачу через API, worker получает её из очереди, строит файл и сохраняет результат. API отдаёт статус и контролируемую ссылку на скачивание только владельцу.

Схема: клиент → API → БД/outbox → очередь → worker → хранилище; worker обновляет статус в БД, клиент читает его через API. Не включайте долгую генерацию в HTTP-транзакцию. Предусмотрите повтор, срок хранения файла и проверку доступа при скачивании; знание ID задачи само по себе не должно давать доступ.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее