大规模 RoR 应用程序的水平与垂直扩展(高 CPU 和内存使用率)

大规模 RoR 应用程序的水平与垂直扩展(高 CPU 和内存使用率)

我们正在推出一款高需求(数百名同时使用的用户)的 Ruby on Rails 应用程序,并试图确定最佳扩展方式。目前,我们的设置遵循以下结构:

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

rails 应用程序非常耗费资源,包括内存和 CPU。我对 Varnish 或 HAProxy 的经验并不多,所以我不确定应该扩展哪些服务器,以及向哪个方向扩展它们。我假设我应该水平扩展(每个服务器的更多实例,稍微垂直扩展),但我不确定在这种情况下行业标准做法是什么。我还需要更好地了解负载将落在哪里,例如,Varnish 是否应该比 HAProxy 实例分配更多的资源(服务器或资源)。

我很感激任何帮助

相关内容