准确对服务器进行基准测试

准确对服务器进行基准测试

我正在准备一台用于生产的服务器,并试图准确估计它能够处理多少数据。

例如,在某个静态页面上(整个页面始终相同),如果我在其上运行 apache 基准测试,我每秒可以获得 5000 到 10000 个请求(取决于并发性)。但如果我在另一台相同的服务器上运行相同的测试(对同一台服务器进行基准测试,但在不同的机器上运行 apache 基准测试),我每秒会得到 168 个请求。这是一个巨大的差异。

再举一个例子,在动态页面上,当在本地测试时,我每秒可能会得到 100 到 200 个请求,但当在不同服务器上测试时,每秒只有 50 个请求。

这些测试的准确性如何?我如何才能知道服务器到底有多好?

答案1

这不是服务器问题 - 它很大程度上取决于您生成的负载。任何现实的规模都必须来自对数据交付的现实测试,为此,有 farmeworks(商业的,可能是一些开源的)会以确定的方式在您的 Web 应用程序中运行,可能有许多代理会访问服务器以找出它可以处理的负载。

例如,在某个静态页面上(整个页面始终相同),如果我在其上运行 apache 基准测试,我每秒可以获得 5000 到 10000 个请求(取决于并发性)。但如果我在另一台相同的服务器上运行相同的测试(对同一台服务器进行基准测试,但在不同的机器上运行 apache 基准测试),我每秒会得到 168 个请求。这是一个巨大的差异。

这基本上就是引入的网络。停留在同一台服务器上是零延迟,几乎无限带宽。当您从另一台服务器进行测试时,情况会发生变化。

相关内容