我正在设置一个 nginx 堆栈并在上线之前优化配置。运行 ab 对机器进行压力测试,我很失望地看到每秒 150 个请求达到顶峰,并且大量请求需要 1 秒以上才能返回。奇怪的是,机器本身甚至没有呼吸困难。
我终于想到要 ping 盒子,看到 ping 时间大约为 100-125 毫秒。(令我惊讶的是,这台机器遍布全国)。因此,网络延迟似乎在我的测试中占主导地位。在与服务器相同的网络上的机器上运行相同的测试(ping 时间 < 1 毫秒),我看到每秒 > 5000 个请求,这更符合我对机器的期望。
但这让我开始思考:如何确定和报告 Web 服务器每秒请求的“实际”度量?您总是看到有关性能的声明,但不应该考虑网络延迟吗?当然我可以每秒向服务器旁边的机器提供 5000 个请求,但不能向全国的机器提供服务。如果我有很多慢速连接,它们最终会影响我服务器的性能,对吗?还是我在想这一切都错了?
如果这是网络工程 101 的东西,请原谅我。我是一名贸易开发商。
更新:为清楚起见进行了编辑。