У меня есть приложение Spring mvc, и мне нужно вернуть подготовленный файл пользователю в ответ на его запрос.
Поток:
- пользователь делает запрос
- Основываясь на данных запроса (json и т. Д.) Мне нужно взять zip-файл, открыть там txt-файл внутри zip, изменить что-то в файле.
- Вернуть измененный почтовый индекс.
Мое решение: у меня на сервере есть базовый zip-файл, когда пользователь делает запрос, я копирую базовый файл в файл tmp -> я распаковываю файл tmp -> делаю изменения -> снова архивирую -> возвращаюсь к пользователь.
Проблема: Как убедиться, что файл tmp будет удален после того, как я обработаю запрос (даже если ошибка произошла в ВМ)?
Есть много пользователей одновременно.
Размер почтового индекса составляет более 100 м.