Архивирование сотен файлов, хранящихся на S3

Мы используем S3 для хранения различных носителей, загруженных с помощью нашего приложения, таких как изображения, документы и т. Д. Мы работаем в индустрии программного обеспечения для недвижимости и в качестве средства обмена данными, хранящимися в нашей системе, с порталами свойств. Общим форматом обмена между порталами являются данные Rightmove BLM. спецификация корма. По сути, это zip-файл, содержащий текстовый файл с разделителями и любые связанные носители, которые отправляются через FTP на каждый портал. Однако узким местом в процессе является загрузка медиа с S3 для архивирования. Например, одна учетная запись в нашей системе может иметь около 1000 изображений / документов для загрузки и архивирования при подготовке к передаче (каждый файл должен иметь имя в определенном формате для данного конкретного портала (уникальный номер, порядковые номера и т. Д.) Однако загрузка 1000 изображений / документов с S3 на сервер EC2 в том же регионе через PHP SDK занимает некоторое время (более 60 секунд). При выполнении этого для нескольких учетных записей одновременно это создает значительную нагрузку на сервер.

Есть ли лучший / более быстрый способ загрузки файлов из S3, чтобы их можно было предварительно подготовить и сжать на экземпляре EC2?

Благодарю.

2

Решение

Одним из вариантов будет объединение zip по мере добавления файлов. Это означает, что вместо одновременной архивации файлов используйте функцию Lambda, чтобы добавить их в zip-файл по мере их добавления или обновления в корзине S3. Тогда почтовый индекс будет доступен более или менее по требованию.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]