Для этого мы создаем конечную точку, чтобы задача могла выполняться в фоновом режиме, поскольку для ее выполнения потребуется время.
Размещенная служба будет иметь максимум 2 ГБ ОЗУ, и такая же память будет использоваться и для файловой системы.
Я попробовал создать конечную точку, которая выполняет следующий поток:
- Получает количество связанных файлов. в Blob.
- Перебирает все файлы один за другим.
- Получает файл из большого двоичного объекта.
< li>Добавьте или прикрепите загруженный файл в zip-архиве (сохранённом во временной папке). - Добавьте метаданные в CSV-файл.
- Загрузите zip-архив. и CSV-файл в общедоступном BLOB-объекте.
- Удалите файлы из временной папки.
У меня есть сомнения в процессе потоковой передачи: если мы создадим zip-файл в BLOB-объекте Azure и динамически добавим файлы, сможет ли он создать файл размером более 2 ГБ?
Я думаю, что при добавлении служба загрузит zip-файл в память. а затем снова загружает его в облако, поэтому создание файла размером более 2 ГБ невозможно. Дайте мне знать, если я ошибаюсь.
С уважением
Подробнее здесь: https://stackoverflow.com/questions/792 ... otnet-core