Мы создаем веб-приложение, которое будет использоваться во время конкурса голосовать за участников и отображать статистику голосования в реальном времени на центральном дисплее.
Конкурс продлится 15 минут, и около 4000 пользователей будут подключаться к веб-приложению в это время и отправить голоса, которые, однако, уникальны для каждого пользовательского устройства.
Мы думаем разработать такое веб-приложение, используя Meteor.js. Однако из-за нашего небольшого опыта в разработке сервисов для такого большого количества одновременных пользователей и бета-состояния Meteor.js у нас есть некоторые сомнения относительно реальной осуществимости проекта.
Ниже приведены вопросы, которые мы рассматриваем:
- Есть ли какой-либо бенчмарк о том, сколько одновременных пользователей Meteor может справиться? Я полагаю, это зависит от сложности самого веб-приложения. В нашем случае это будет довольно прямолинейно, только клиент, используемый для центрального дисплея, будет подписан на живой запрос Mongo
votes.find({})
, остальные пользователи будут видеть только кнопку vote/already voted.
Наличие некоторых данных из реального случая или тестового сценария нам очень помогло.
-
Будет ли инфраструктура Meteor обрабатывать 4000 пользователей? Или мы должны пойти на какое-то другое решение для хостинга, указанное в этом удаленном вопросе (вам нужно 10k + rep, чтобы увидеть его)?
-
Есть ли какие-либо соображения производительности, характерные для Meteor.js, мы должны знать?
Мы видели уже похожие записи, однако ни один из них не имел такого большого количества пользователей за такое короткое время:
- Сколько нагрузки могут обрабатывать метеоритные серверы? (2013)
- Насколько эффективным может быть Метеор при обмене огромной коллекцией среди многих клиентов?
Кроме того, мы могли бы использовать Cluster smart package. У кого-нибудь есть опыт?