@rusrich

Как конвертировать видео на одном сервере, а раздавать контент с другого, используя Ruby on Rails?

Добрый день.

Подскажите, как реализовать данную задачу.

Есть приложение, которое конвертирует видео, создает структуру БД и через плеер позволяет посмотреть данное видео.

Теперь нужно отделить конвертацию на отдельный сервер, чтобы при отдаче нагрузка на процессор была невысокой, ну и дискам было полегче.

Примерное видение такое:
Одно и тоже приложение устанавливаем на двух серверах: сервер1 (для конвертации) и сервер2 (раздача контента). Сервер3 используем для БД.

На сервере1 производим конвертацию и складываем файлы по FTP на другой сервер или через NFS

Для сервера2 в БД корректируем линки на файлы таким образом, чтобы к ним обращение было напрямую из сервера2

Подскажите, плиз у кого опыт есть.

Сейчас работает текущий проект на php и там конвертация и раздача контента производится с одного сервера и в пики нагрузки при одновременной конвертации уровень Load Average CPU подпрыгивает до 140. Админы рекомендуют держать этот уровень в пределах 90.

Поэтому хотели разделить.
  • Вопрос задан
  • 158 просмотров
Пригласить эксперта
Ответы на вопрос 1
Мне кажется, что лучше организовать загрузку файлов, требующих пост-обработки, прямиком на выделенный сервер. Сервер1 можно использовать в целях экономии одновременно для приложения RoR и отдачи контента через кеширующий прокси, хотя правильно таки выделять сервер только под раздачу контента, то есть CDN. Для пост-обработки можно использовать микросервис на Ruby или другом языке на сервере2. По окончании пост-обработки оповещать об окончании задачи и загружать обработанные файлы на сервер для отдачи контента.

Сервисы: Amazon CloudFront, Cloudflare Stream, Akamai CDN
Самостоятельно: ATS - https://habr.com/post/113728/ , Varnish, Nginx и др.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы