中型服务器平均可以处理多少个同时请求?

中型服务器平均可以处理多少个同时请求?

我购买了带有 Windows Server 2008 R2 Web Edition 试用版的 PRIMERGY TX100 S1 服务器。

我的互联网连接采用静态 IP,下载和上传速度都非常快(大约每秒 50 兆比特)。

我的网站仅提供基于文本的内容,不提供流媒体。

中型服务器平均可以处理多少个并发请求?它至少可以处理 1000 个并发请求吗?

编辑1

对于有这方面经验的人来说,可能会有一个粗略的预测。

答案1

让我们来看看一些数字:

  • 一次 1000 个应该没有问题,一般的
  • 一次 10,000 个是可行的,但你必须非常了解你的整个设置,并且永远不要阻塞任何等待 I/O 的 CPU,也不要受到带宽的限制。(假设每个 http 请求 10KB,响应@10,000 每秒请求,即 97MB每秒)

这个答案的其余部分只是一些讨论,只是为了给你指明一些方向

我已经想过这个问题几次了,因为你正在寻找大概的数字,所以这可能会对你有所帮助:

查看处理特定任务的前端专用服务器(但与其他服务通信以为其工作,例如 Google 搜索基础架构,它会调用许多其他机器来获取信息),然后处理实际客户端套接字的前端机器应该能够同时处理大约 15,000 个用户(大概,假设二进制协议),因为如果您查看每个服务器上有多少玩家在玩 WOW,根据机器的强度,他们每个“世界”有 6-30,000 个用户 - 我假设这是一台由后台其他服务支持的机器。我现在找不到列出服务器和每个服务器的玩家的页面。虽然这不是一个网站,但您正在寻找大概的信息,这可能会将您引向正确的地方。

如果您对某些架构数字感兴趣,请查看维基百科的服务器统计数据 -http://stats.wikimedia.org它们展示了您可能感兴趣的有关 http 请求的每个细节。

查看 IIS 统计数据,以这个网站 stackoverflow.com 为例 - 他们每月在 2 台 Web 机器上进行 1600 万次点击,我敢肯定同时有超过 1000 人访问过该网站。有一篇文章HighScalability.com 上有关 stackoverflow 服务器的信息。 更新 - 现在每月超过 9500 万

答案2

如果土拨鼠可以扔木头,那么它一次可以扔多少木头?

即使您提供了完整的服务器规格以及所提供数据的详细信息(例如是否有任何动态数据、平均请求大小等),您的问题也几乎不可能回答。获得良好答案的唯一方法是设置服务器,向其发送请求并测量结果。这样,您也会发现瓶颈。

答案3

除非设计不当,否则服务器(站点进程/数据库)消耗的资源可能比您的(套接字、TCP 堆栈、网络适配器)多得多。更好的问题是服务器可以处理多少个同时的 TCP 连接。

平均而言,Linux 系统在性能开始下降后临界点为 100。这意味着它可以处理超过 100 的负载,但效率不高。在性能开始变得完全不可接受后,临界点可能会上升到 180。

微软声称,最新的 Windows 服务器临界点是通过编写更高效的 TCP 堆栈来实现的。

但请注意,这个数字非常大。如果您每月有 150000 名访客,则大约有 5-6 个同时连接,因此,如果您的访问量没有增加 10 倍,那么您应该担心这一点,尤其是当您在真实服务器上托管网站时。

但是,但是,但是请注意!网站通常托管在虚拟机上,然后每个虚拟机上的 Web 服务器可以有多个网站,因此这会加速临界点。我所说的临界点代表真实机器 - 网络适配器。在共享环境中,其他用户会占用他们那一部分资源。

这就是为什么当您使用廉价托管服务提供商托管网站时,您的体验会如此糟糕。为了削减开支,他们倾向于在同一台真实服务器上安装尽可能多的虚拟机,每个虚拟机可以处理尽可能多的网站,另一方面,他们使用物理网络适配器来推动所有这些网站的流量。

相关内容