在负载testing时,networking“距离”是一个因素吗?

我有一个服务器应用程序在Elastic Load Balancer后面的EC2上运行。

我已经使用Blazemeter进行了testing – 这是一个基于jMeter的负载testing服务,也可以在基于EC2的基础架构上运行。 结果很好。

但是,我应该担心它与亚马逊networking一起运行吗? networking“距离”是一个问题,我是否应该寻求一种不在EC2内运行的负载testing服务?

“在EC2内运行”可能意味着许多地方。 例如,负载testing器可能在我们东1,但您的应用程序在我们西2。 这可能是一个公平的考验。

如果负载testing仪与您的应用程序位于相同的区域,则我可以看到的主要分支是数据传输时间非常短。 这意味着您的Web服务器将能够比在公共互联网上更快地完成和closures连接。

例如,如果您的页面需要100ms才能生成,并且您的普通用户的延迟时间为200ms,但在您的EC2区域内为10ms,则普通用户的平均请求需要300ms,而EC2负载testing人员需要210ms。 这与很多请求有很大的不同。

如果您的主要目标是testing吞吐量,那么您的testing不需要从其他地区运行。 从不同的地区运行会增加延迟,但延迟并不总是衡量应用程序性能的好方法。 如果您的应用程序可以处理100个请求,那么它可以处理100个请求/秒,而不同的是,由于增加了延迟,您的来自我们西方的请求将花费更长的时间。 也可以从另一个地区执行testing,但不会给服务器带来更多压力。