Straight to the point:
I have this javascript:
for(item=1;item<5;item++)
{
xmlhttp=new XMLHttpRequest();
xmlhttp.open("GET",'zzz.php', true);
xmlhttp.send();
}
And in PHP file something like this:
usleep(5);die('ok');
Now the problem is javascript seems to be waiting for each ajax call to be completed before sending another one.
So the first response gets back after approx. 5 seconds, next after 10 seconds and so on.
That’s a very simplified version of what I do, since the real script involves using cURL in PHP and jQuery as JS lib. But the problem remains the same.
Why do responses come back in 5 second intervals?
If you are using sessions within your PHP, then successive requests will be “held” until the lock on the session file is release, eithe by termination of the previous script holding the lock, or by an explicit session_write_close() call within that script. This gives the appearance of the server only running a single request at a time, and may be your problem.