哪个更好:三个小型 VPS 还是一个大型 VPS

哪个更好:三个小型 VPS 还是一个大型 VPS

我对部署带有数据库的 django 应用程序感兴趣。因此我想知道您认为在性能方面哪个更好:三个 linode 540 (720) 还是一个 linode 1440 (2880)。

我想要一个服务器来提供静态内容,另一个服务器作为应用程序服务器,最后一个服务器作为数据库服务器。

你的建议是什么?

答案1

我尊重地不同意 chaos 的建议。拥有多个 VPS 不会平均分配负载,并且提供静态文件的 VPS 可能会被严重低估。此外,它还增加了应用程序的复杂性。

我会选择一台大型服务器,根据需要增加其容量,并且仅在升级不再可行时才考虑分区。

答案2

我会选择这三个。如果它们最终部署到同一个盒子里,与单个 VPS 相比,您的性能会略有下降,但 1) 可能不会下降,2) 调整它们的角色比调整单个 VPS 的所有角色更容易,3) 这意味着您的应用程序从第一天开始就为分布式角色而设计,因此如果您以后需要更强大,也许为每个角色部署一个真正的服务器,您已经做好准备了。

答案3

我要反其道而行之,说你应该使用 2 - 1 用于你的 Web 内容,另一个(可能更大)用于你的数据库。见鬼,我的情况是,我运行一个 VPS 来满足我的所有需求,包括数据库,并设置了适当的子域:

static.example.org:处理 css、js、图像等内容。设置为保持活动开启且将来过期。(内容一年或更长时间不会过期,因此不会再发出请求。保持活动开启,因为大多数网页视图都会尝试加载许多静态页面,因此这将加快这些请求的速度)

www.example.org:处理动态请求。将静态请求与动态请求分开对于系统未来的可扩展性非常重要 - 而且它不会对过早优化产生太大影响。关闭保持活动和关闭未来过期。(内容验证必须针对动态内容进行。关闭保持活动(或设置得非常低)可以让您为传入请求节省连接数……尤其是当许多点击都是单个且较慢的查看请求时。)

使用 nginx 作为前端代理,自行处理 static.example.org 请求,但将 www.example.org 请求传递到 FastCGI 后端(例如),这已被证明对我们来说是一种快速的解决方案 - 并且也是一种节省内存的解决方案。或者,您可以将所有静态内容放在 Amazon S3 或类似的东西上,然后将您的网页指向该内容(启用未来过期功能)。

我的第一个扩展点可能是将我的数据库移至单独的服务器。我将能够使用 nginx 轻松地将 Web 服务器 FastCGI 进程扩展到多个系统 - 分散负载应该相当容易……理论上。

答案4

-VPS 具有内存杀手程序,分配的 RAM 超出了预期。-没有可用于检查系统的日志。-如果我们的应用程序需要更多内存,我们需要 RAM,而托管服务提供商需要资金。-最好采用中型 VPS 计划分布式 db-app 服务器。

相关内容