Am intrigued to know why this "overstresses" servers. Its not like it loads up the page several times over.
edit: reading the wrong variable and went down the wrong road after hearing people talking about concurrent connections
Pipelining, just sticks several requests down one connection, rather than multiple connections i thought? Saves the server having to open and close the tcp connections, which is usually the slow bit. Just some servers get a bit confused that after theyve worked with one request, they recieve another, and then go "meh, ill just timeout".
And id disagree with the thing about the internet preferring to deal with small packets. small packets mean that theres more headers, opening and closing of connections going on. Id prefer to , if i had a connection, keep it. Imagine coding a small server. You could either have something which opens a connection, then loops sorting out the requests through this connection, then closing it. Or, you could have a loop, which opens and closes the connections for each request. The first one would be better in my experience, as the program can spend more cycles sending data, rather than managing sockets.
in the same way that in online games, generally one socket is opened, and all the data is sent through that when required, rather than a socket being opened and closed each time you want to send something?
The reason it is disabled by default would seem to be that some webservers are a bit silly, and dont support multiple requests through one connection, and therefore get confused, and die.
this is based on my knowledge of adminning webservers, and from doing a fair bit of programming using sockets and network connections