Я разрабатываю сервер приложений с NodeJS и AWS.API загрузки файлов на EC2 с ELB и S3
Я настраиваю серверную среду с помощью ELB и EC2.
Я использую ELB как балансировщик нагрузки и подключил к нему несколько экземпляров EC2 сервера приложений.
И один экземпляр EC2 используется для MongoDB.
Мой вопрос касается запроса, включая загрузку файла.
Я думаю, что загруженный файл не должен быть на сервере приложений (экземпляр EC2), поэтому я попытаюсь сохранить загруженные файлы на S3 и разрешить серверам приложений (экземпляры EC2) получить к нему доступ.
Грубое решение заключается в том, что если серверы приложений принимают файл от клиента, переместите его на S3 и удалите файл на сервере приложений.
Но тогда это приведет к некоторым потерям производительности, и я не чувствую, что это чистый способ.
Это лучший способ? или есть другой способ его решения.
Я думаю, что это лучший способ загрузить файл на S3.
Но файл загружен другими данными. (Например, загрузка профиля - имя: String, age: Number, profileImage: File)
Мне нужно обработать другие данные на сервере приложений, чтобы клиент не загружался напрямую на S3.
Есть ли идея лучше?
Пожалуйста, спасите меня.
P.S: Пожалуйста, дайте мне знать, если вы не можете понять мое выражение, потому что я не родной. Если это так, я добавлю некоторые объяснения для этого с моим лучшим!
Спасибо @chris. Я пытаюсь решить проблему с вашим ответом, но есть еще одна проблема. Мне удалось получить предварительно подписанный URL-адрес, и я могу загрузить изображение на S3 прямо из браузера (я тестирую с расширением post-man: google-chrome). Но каждый загруженный файл изображения сломан. Файл был загружен, а его байты такие же, как и оригинальные (я не проверял строго). Но после загрузки файла изображения и его выполнения я получил сообщение-файл, который нельзя открыть.Это сломанный или непризнанный формат файла. (Я загрузил файл png и jpeg). Любое решение для меня? Я борюсь с этим за 2 дня. –