Назад | Перейти на главную страницу

Сравнение горизонтального и вертикального масштабирования для крупномасштабных приложений RoR (высокая загрузка ЦП и памяти)

Мы запускаем очень востребованное (несколько сотен пользователей одновременно) приложение Ruby on Rails и пытаемся определить лучший способ масштабирования. В настоящее время у нас есть установка, которая следует этой структуре:

HaProxy DDoS Protected VPS -> Three Varnish Cache VPSs ---> One Thin + Sinatra + NGINX server for the actual files

Приложение rails требует значительных ресурсов как памяти, так и процессора. У меня не так много опыта работы с Varnish или HAProxy, поэтому я не уверен, какие серверы следует масштабировать и в каком направлении их масштабировать. Я предполагаю, что мне следует масштабировать по горизонтали (больше экземпляров каждого сервера и только немного по вертикали), но я не уверен, какие отраслевые стандарты применяются в таком случае. Мне также нужно лучше понимать, где будет падать нагрузка, поэтому, если Varnish должен иметь больше выделенных ресурсов (серверов или ресурсов), например, чем экземпляры HAProxy.

Я ценю любую помощь с этим