【问题标题】:Web application server architecture: is it better to have one big server or many small servers?Web应用服务器架构:一台大服务器好还是多台小服务器好?
【发布时间】:2019-05-07 16:21:52
【问题描述】:

我目前正在为我的 Web 应用程序创建服务器架构。我有一个负载均衡器将请求分发到多台服务器,我想知道使用一台大服务器还是多台小型服务器对我来说更好。

例子:

1 台服务器,16GB 内存和 6 个 CPU

4 台服务器,每台配备 4 GB 内存和 2 个 CPU。

我的应用程序每秒向服务器发送许多 http 请求,但即使是小型服务器也没有任何压力。

感谢您的帮助。

【问题讨论】:

  • 这实际上取决于尺寸。你说“每秒很多”,这不知道它是 100 还是 100 万。如果您的预计负载不会对服务器造成压力,那么您为什么要拆分它 - 是否出于其他非性能考虑?这是在prem还是azure等?就我个人而言,在当今时代,除了基于云的架构之外,我永远不会这样做,而可扩展性、冗余等在这些环境中都非常简单。

标签: database-design server architecture


【解决方案1】:

除非您有非常具体的向上扩展(单个大型服务器)的原因,否则您必须使用自动扩展进行横向扩展(拥有冗余服务器)。由于几个原因,这是现在最可接受的模式。

避免单点故障

横向扩展(拥有多台服务器)的主要原因是避免单点故障。在一台大型服务器的情况下,如果出现故障,您的应用程序也会随之而来。

横向扩展收益

  • 即时和持续可用性
  • 硬件容量没有限制
  • 成本可以绑定使用
  • 您不必总是为高峰需求付费
  • 内置冗余
  • 易于根据您的需要调整大小和调整大小

【讨论】:

    【解决方案2】:

    拥有多台小型服务器比大型服务器具有以下优势

    1. 您可以减少单点故障。如果您使用一台大服务器 如果它失败了,那么您的所有用户都将使用它。和 多个小型服务器,负载均衡器监控不健康的实例 它会停止向不健康的请求发送新请求。最终 您可以使用自动缩放将更多实例附加到 elb。

    2. 使用自动缩放,您可以根据接收到服务器的请求来扩大和缩小工作人员(实例)的数量。您可以优化基础设施成本。

    【讨论】:

      猜你喜欢
      • 2020-01-31
      • 1970-01-01
      • 1970-01-01
      • 2023-04-08
      • 2014-04-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多