Объединение PDF-файлов, хранящихся на Amazon S3

В настоящее время я использую pdfbox для загрузки всех моих файлов pdf на моем сервере, а затем использую pdfbox для их объединения. Он работает отлично, но очень медленно - так как мне нужно загрузить их все.

Есть ли способ выполнить все это на S3 напрямую? Я пытаюсь найти способ сделать это, даже если не в Java, а также в Python и не могу это сделать.

Я прочитал следующее:

Слияние файлов на S3 Amazon

https://github.com/boazsegev/combine_pdf/issues/18

Есть ли способ объединить файлы, хранящиеся в S3, без необходимости их загрузки?

РЕДАКТИРОВАТЬ

То, как я это сделал, использовало concurrent.futures и реализовать его с concurrent.futures.ThreadPoolExecutor, Я установил максимум 8 рабочих потоков для загрузки всех файлов PDF с s3.

Когда все файлы были загружены, я объединил их с pdfbox. Просто.

1 ответ

Решение

S3 - это просто хранилище данных, поэтому на каком-то уровне вам нужно перенести PDF-файлы с S3 на сервер, а затем обратно. Вероятно, вы получите лучшую скорость, выполнив преобразования на экземпляре EC2, расположенном в том же регионе, что и ваша корзина S3.

Если вы не хотите самостоятельно раскручивать экземпляр EC2 только для того, чтобы сделать это, то другой альтернативой может быть использование AWS Lambda, вычислительной службы, где вы можете загрузить свой код и позволить AWS управлять его выполнением.

Другие вопросы по тегам