Что думают люди, это самые важные проблемы при разработке приложения, которое позволит пользователям загружать видео и изображения на сервер и перекодировать их FFMPEG и хранить в amazon S3? У меня есть несколько вариантов:
1) установите FFMPEG на том же сервере, который обрабатывает загрузку файлов, когда видео загружается и сохраняется в экземпляре EC2, вызывается FFMPEG для его преобразования, а затем, когда это делается, напишите файл в ведро S3 и удалите оригинал.
Насколько это масштабируемо? Что происходит, когда многие пользователи одновременно загружаются? Как управлять несколькими процессами одновременно? Как узнать, когда запускать другой экземпляр и балансировать вес этой конфигурации?
2). Один сервер для обработки загрузок (обновление базы данных, переименование файлов и т.д.) и один сервер для выполнения транскодирования. Опять же, как лучше всего управлять несколькими процессами? Должен ли я смотреть на Amazon SQS для этого? Могу ли я сообщить серверу транскодирования, чтобы получить файл с сервера загрузки, или мне нужно скопировать файл на сервер транскодирования? Должен ли я просто хранить все файлы на S3, и SQS может читать оттуда. Я стараюсь как можно меньше трафика.
Я запускаю Linux-сервер в качестве сервера загрузки и запускаю FFMPEG.
Любые советы по наилучшим методам настройки такой конфигурации будут оценены. Большое спасибо