This is something I'll need to write a test script tomorrow to investigate but maybe someone has the answer already.

Given we have Apache web server and a client which sends several pipelined requests.

According to RFC server is supposed to return responses in the same order as requests are sent. So, does it mean server processes requests sequentially or it would still process them in parallel only waiting for slow ones when outputting the lot?

If they are processed in parallel then faster requests (in terms of amount of server time required) which were sent later will be processed earlier then slow requests.

Eg. Request 1 requires 60 seconds to be processed Request 2 - 5 sec Request 3 - 5 sec Request 4 - 30 sec Request 5 - 5 sec

All these 5 requests are sent one after another. Will requests 2,3,5 be completely processed (but not returned) before slow requests 1 and 5 or server would wait for each requests before starting processing another one?

link|improve this question

57% accept rate
feedback

1 Answer

up vote 1 down vote accepted

After making several tests i can confirm that Apache does infact wait for each request to be processed before starting processing the next one so processing is SEQUENTIAL.

link|improve this answer
1  
I'm reading http is essentially FIFO, even with pipelined connections. I just came across this post today, which describes some of the problems with http: igvita.com/2011/04/07/life-beyond-http-11-googles-spdy – mahnsc May 4 '11 at 22:32
This articles confirms my finding, thank you. Interesting read as well. – alexeit May 5 '11 at 9:29
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.