Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/rust/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php JavaScript显然会在循环中发送另一个AJAX调用之前等待每个AJAX调用_Php_Ajax_Loops_Javascript_Intervals - Fatal编程技术网

Php JavaScript显然会在循环中发送另一个AJAX调用之前等待每个AJAX调用

Php JavaScript显然会在循环中发送另一个AJAX调用之前等待每个AJAX调用,php,ajax,loops,javascript,intervals,Php,Ajax,Loops,Javascript,Intervals,直截了当地说: 我有一个javascript: for(item=1;item<5;item++) { xmlhttp=new XMLHttpRequest(); xmlhttp.open("GET",'zzz.php', true); xmlhttp.send(); } 现在的问题是javascript似乎在等待每个ajax调用完成后再发送另一个调用。 因此,第一个响应在大约5秒后返回,下一个响应在10秒后返回,依此类推 这是我所做工作的一个非常简化的版本,因为

直截了当地说: 我有一个javascript:

for(item=1;item<5;item++)
{
    xmlhttp=new XMLHttpRequest();
    xmlhttp.open("GET",'zzz.php', true);
    xmlhttp.send();
}
现在的问题是javascript似乎在等待每个ajax调用完成后再发送另一个调用。 因此,第一个响应在大约5秒后返回,下一个响应在10秒后返回,依此类推

这是我所做工作的一个非常简化的版本,因为真正的脚本需要在PHP中使用cURL,并将jQuery作为JS库使用。但问题依然存在


为什么响应会以5秒的间隔返回?

如果您在PHP中使用会话,则连续的请求将被“保留”,直到会话文件上的锁被释放,无论是通过终止先前持有锁的脚本,还是通过该脚本中显式的session\u write\u close()调用。这使得服务器看起来一次只运行一个请求,这可能是您的问题。

如果您在PHP中使用会话,则连续的请求将被“保留”,直到会话文件上的锁被释放,无论是通过终止前一个持有锁的脚本,还是通过显式会话写入关闭()在脚本中调用。这使得服务器看起来一次只运行一个请求,这可能是您的问题。

所有五个请求可能不会同时处理,因为HTTP标准明确规定,您在任何时候都只能保证同时有两个到服务器的连接(不过大多数浏览器都有更高的限制,所以他们可能会尝试使用大约4-8个连接)。如果您达到了高于1的限制,则这可能是一个瓶颈。

可能不会同时处理所有五个请求,因为HTTP标准明确规定,您在任何时候都只能同时与服务器建立两个连接(大多数浏览器都有一个更高的限制,所以他们可能会尝试4-8个连接)。如果你达到了一个以上的限制,那么这可能是一个瓶颈。

谢谢!这就是问题所在谢谢!这就是问题所在
usleep(5);die('ok');