对AJAX请求的时间进行基准测试,当它们之间的间隔较低时,它们会相加

时间:2013-09-20 10:13:36

标签: javascript jquery ajax

我正在使用jQuery来对API请求所花费的时间进行基准测试。为此,我将在特定时间间隔内重复运行相同的请求。一切都运行得很好。

但是如果我将间隔减少到显着低于API请求返回的时间,则基准时间将加起来。

尝试将JSBin示例中的Interval减少到100,你会看到我的意思:

缩减了JSBin示例: http://jsbin.com/azuqUho/4/edit

我在这里看到了这个: Interval high enough Interval to low

由于我无法将now变量传递给getJSON的成功函数,我不知道如何解决这个问题。

有什么建议吗?

谢谢, 西蒙

2 个答案:

答案 0 :(得分:1)

其浏览器连接限制

浏览器一次只能执行x个请求。如果你运行intervall太快,那么并行运行的请求大于x。 假设x = 5,你运行6个请求。前5个请求几乎会同时返回,6。请求将花费大约两倍的时间(它必须等到前5个请求中的一个完成)

为证明这一点,我一次只发出5个请求if(requests<6) {,我们看到时间保持不变 http://jsbin.com/azuqUho/12/edit

答案 1 :(得分:0)

使用servlet进行基准测试可以避免由于浏览器可以发送的请求限制而计算等待时间。