2013-07-12 2 views
3

У нас есть одно веб-приложение (с Spring, hibernate и MySQL в качестве базы данных), в котором несколько пользователей могут одновременно хранить тяжелые видео (предварительно записанные или записывать из самого приложения) на сервере.Загрузка нескольких видео на сервер одновременно

В этом случае загрузка сервера будет определенно больше. Мы предполагаем, что в приложении будут 500-2000 пользователей.

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

1) Сохранение видео на нашем сервере (с большим дискового пространства), а также с помощью ActiveMQ/RabbitMQ механизмы для загруженного файла и загрузки в очередях.

2) Сохранение видео на некотором стороннем сервере (например, YouTube, vimeo и т. Д.), Который будет загружать все видео на одну центральную учетную запись. Я недавно проверял эту вещь с вами на трубке и vimeo, но для каждой загрузки им требуются учетные данные для входа в конечный пользователь. И я не хочу в своем приложении, чтобы конечные пользователи предоставляли свои учетные данные перед каждой загрузкой.

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

Спасибо заранее,

Arun

ответ

0

Мульти-серверы могут помочь. На одном сервере: Если вы используете одноядерный процессор - обслуживается только один клиент. Если вы используете многоядерный процессор, и вы открываете новый поток для нового подключения - будут обслуживаться только клиенты #ofCores, и даже это неверно, потому что ваша локальная память может закончиться до того, как ваши os сохранят данные на вашем локальный жесткий диск (который имеет одну шину), поэтому обслуживание 500-2000 клиентов приводит к многосерверному решению.

Смежные вопросы