Does Apache webserver process http pipelined requests in parallel

apache-2.2httppipelining

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 finished 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?

Best Answer

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.

Related Topic