#HtmlToPdfConverter
Краткий алгоритм работы:
- Файл пользователя предварительно загружается в базу данных с целью защиты от перезапусков сервиса.
- Запускается Hangfire job для конвертации файла.
- Опрос на стороне клиента прогресса по Hangfire job (pull model).
- Выходной файл решено было дополнительно защитить и предварительно сохранить в бд.
- После успешной конвертации пользователю доступна ссылка на скачивание файла.
- Когда пользователь отправляет запрос на скачивание файла, проверяется наличие локальной копии, если её нет, то файл подгружается из бд.
Данная архитектура позволяет горизонтально масштабировать микросервис, без проблем с отсутствием локальной копии файлов. В случае падения микросервиса, Hangfire автоматически перезапустит job на другом доступном сервере.