Вопросы по хостингу для приложения с "высокой" скоростью - PullRequest
5 голосов
/ 12 октября 2011

У меня есть вопрос, касающийся хостинга для приложения с высокой пропускной способностью.Дело в том, что у меня есть 3/4-летний опыт работы с приложениями Ruby on Rails, но у меня никогда не было сайта с высоким трафиком.Я действительно взволнован, потому что это «следующий уровень» для меня и моего коллеги.Дело в том, что у нас нет опыта работы с приложением rails для обработки «большого трафика», прежде всего позвольте мне определить «высокий трафик» в этом случае.

Мы разрабатываем приложение rails для одного изведущие голландские телекоммуникационные провайдеры и ок.посетителей в день будет около 400.000 пользователей.Мы программируем на ruby ​​1.9.2 и Rails 3.1.Мы используем устройство для обработки аутентификации.Но мы ищем надежную вечеринку для размещения этого приложения.Мы смотрим на Heroku, но я понятия не имею, что мне нужно и сколько рабочих, динамов и / или выделенных баз данных мне нужно.Нам нужно смотреть фильмы в потоковом режиме, и мы планируем разместить их в ведре Amazon S3.

Так что я ищу советы относительно Heroku и / или других профессиональных и надежных вечеринок.Есть ли что-то, что я должен принять во внимание в отношении применения рельсов?

Спасибо!

1 Ответ

9 голосов
/ 13 октября 2011

Это довольно легко грубо с точки зрения динамо.

Dyno является однопоточным, поэтому если для рендеринга вашей страницы требуется 200 мс, вы можете рендерить 5 страниц в секунду. Вам необходимо выяснить, сколько страниц в секунду будут делать эти 400 000 пользователей. Затем вы узнаете, сколько страниц в секунду запрашивается и что может обработать один dyno. Таким образом, вы просто увеличиваете количество динамов, пока не достигнете числа запросов пользователей в секунду.

например, 1 дин @ 200 мс = 5 страниц в секунду 2 динос при 200 мс = 10 страниц в секунду

и т. Д. И т. Д. Это всего лишь показатель паркинга, поскольку будут и другие факторы, такие как производительность БД и т. Д., Но будьте уверены, Heroku подходит для этого типа сценария, поскольку это так просто, так что добавьте больше динамометров для увеличения через пут. 1007 *

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

После того, как вы перейдете на базу данных объемом 20 ГБ, вам нужно будет использовать выделенную базу данных, и со стороны клиента похоже, что стартовая БД за 200 долларов в месяц не заставит их потеть из-за затрат на хостинг.

Я что-то пропустил? Если бы я вернулся ко мне,

...