top button
Flag Notify
    Connect to us
      Site Registration

Site Registration

How to tell an HTTP client to limit parallel connections?

+1 vote
941 views

I've got a very feeble web server. The crypto handshaking involved in opening an https: connection takes 2-3 seconds. That would be fine if a browser opened a single connection and then sent a series of requests on that connection to load the various elements on a page.

But that's not what browsers do. They all seem to open whole handful of connections (often as many as 8-10) and try to load all the page's elements in parallel. That turns what would be a 3-4 second page load time (using a single connection) into a 20-30 second page load time. Even with plaintext http: connections, the multi-connection page load time is slower than the single-connection load time, but not by as large a factor.

Some browsers have user-preference settings that limit the max number of simultaneous connections to a single server (IIRC the RFCs suggest a max of 4, but most browsers seem to default to a max of 8-16).

What I really need is an HTTP header or meta-tag or something that I can use to tell clients to limit themselves to a single connection.

I haven't been able to find such a thing, but I'm hoping I've overlooked something...

posted Nov 8, 2013 by Seema Siddique

Share this question
Facebook Share Button Twitter Share Button LinkedIn Share Button

2 Answers

+1 vote

That will only go so far. Suppose you tell web browsers "no more than 3 connections", then get hit by 30 nearly simultaneous, but separate clients. Then you still wind up allowing up to 90 connections.

There should be a parameter in your web server's config file to limit the number of simultaneously active threads or processes. It's been a long time for me, and you don't mention what brand of server you are
running, but ISTR that Apache has/had such parameters.

answer Nov 8, 2013 by Sheetal Chauhan
+1 vote

There's an Apache module called mod_limitipconn that does just what you are asking. I've never used it and can't vouch for it. I'm not aware of anything like this for other servers like Nginx.

answer Nov 8, 2013 by Majula Joshi
Similar Questions
+1 vote

How can I differentiate the call between client ios app & browser call?
session_controller - create method is being used by both client & rails web application.I want to restrict for web application to use create method. how can I achieve this?

+2 votes

I want the images should be accessible as part of http page only not by any other mean, no clue any suggestion would have great help.

+2 votes

I have task to validate or parse following http header

Accept
Accept-Charset
Accept-Encoding
Accept-Language
Accept-Datetime
Content-Length
Content-MD5
Content-Type

lets take Accept-Language as an example , if header language comes other than en-us I should reject the request with customized code response.

let me know ways to achieve the task? can we do with any configuration files?
We are using tomcat 6.0.18

...