刀片服务器如何才能最好地处理大量下载静态二进制文件的用户?

Dai*_*tsu 1 apache-2.2

我有一个刀片服务器可以使用(8 个 CPU,合适的带宽,运行 apache)。用户将连接到服务器以下载单个文件(5mb 或 70mb 版本)。我该怎么做才能使服务器在负载下不融化?

用户将首先访问一个 PHP 文件,该文件将确定他们是否可以访问该文件,如果脚本通过,则他们将下载该文件。我只是想知道我能做些什么来确保不是所有的插槽都填满并且人们最终会超时。

我预计每天最多下载 10,000 次。一个像样的刀片服务器能够处理这个问题吗?

Cho*_*er3 7

首先,它是刀片服务器还是普通的“比萨盒”服务器无关紧要,尤其是对于这样一个简单的用例。

在这种特殊情况下,拥有 8 个内核是非常大的杀伤力,因为此应用程序将受到 98% 以上的 IO 限制。

基本上,您只能做两件事来加快速度;提高您的 IO 速度(比如从 1Gb 网卡移动到 10Gb 网卡)并确保文件始终在缓存中,除非您的 PHP 代码编写得特别糟糕,否则它几乎不会在多个核心上注册。