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