首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >扩大规模:分工还是裁员?

扩大规模:分工还是裁员?
EN

Stack Overflow用户
提问于 2009-12-24 17:43:18
回答 1查看 87关注 0票数 0

这是我一直想知道的事情。我知道水平缩放是为了在混合中加入更多的机器。但我可以想到两种方法来解决这个问题。假设我有20台我想使用的服务器(加上一个数据库)。我可以:

  1. 使所有20台服务器作为应用服务器运行。
  2. 使不同的服务器执行任务的不同部分。例如,让一组服务器处理请求,然后让另一组服务器应用业务逻辑,然后让另一组服务器进行数据库调用。

第一条似乎更常见,更容易理解,但第二条似乎被认为是“最佳实践”(因为它主要是n层架构)。如何在这两种模式中作出选择?每种方法的优缺点是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-12-24 18:00:42

这取决于任务,以及您的瓶颈是什么。

几乎无一例外,您至少需要两种服务器: 1)应用程序和2)数据库。如果您分发应用服务器,您仍然需要在它们之间同步数据,使其中一个服务器(或一个单独的服务器)成为您的数据库服务器。

如果您知道数据库不会受到大量流量的影响(例如:您正在运行一个基于实时聊天的站点,并且没有多少数据永久存储或同步),那么选择只使用应用程序服务器就可以了。

但是,对于大多数站点来说,选择2更好,特别是如果您事先不知道哪些服务器将成为瓶颈。如果不允许每种服务器类型进行缩放,那么在意外的增长突增期间,您将不得不重写源代码。然后,您将不得不做出困难的决定,例如“我们应该禁用哪些功能,以便在我们进行缩放时站点仍能正常工作?”

老实说,我不会花太多时间担心可伸缩性。一旦您到达服务器负载变得太高的地步,您将能够负担得起一些源重写。要么通过新发现的资金来源,要么通过网站的直接利润。就是一个很好的例子: Twitter仍然做得很好.

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1959173

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档