« Live Blog from Worst Practices Session | Main| If you tried to send me mail in the last two weeks... »

Make Firefox Faster - Tip from Lotusphere Network Session

Category



This may be a case of "if everybody does it, the whole system will crash", but I pulled this tip from the ID404 Session "Wes Morgan's Network Design for Collaboration".  I wasn't able to jot down the details from the session, but I found
this web entry with instructions on how to tweak Firefox's configuration to enable http pipelining.  Basically, instead of opening a single connection to a website, you can set Firefox to open many more - dozens perhaps.  This is supposed to spead things up.  We'll see.

To order the full session on DVD you can go to https://www.vsimedia.com//lotusphere/index.php?section=catalog

Comments

1 - Well, since you asked......

Instructions for locking down Firefox config can be found at http://ilias.ca/blog/2005/03/locking-mozilla-firefox-settings.html

I haven't tested them, but it looks right...

--Wes

2 - It should be noted that I mentioned Firefox's HTTP pipelining as a potential PROBLEM in production environments...*laugh* Pipelining, in and of itself, is an HTTP 1.1 facility that simply allows multiple requests to be sent over a single (persistent) HTTP connection. Of course, this requires that the server on the other end SUPPORTS pipelining, and there are sites which do not; some users have reported problems after enabling pipelining. (Of course, any intermediate HTTP proxies must also support persistent connections; this is not always the case.)

The problem is that folks who enable pipelining also do things like:

* network.http.max-connections = <something huge; default is 24>
* network.http.max-connections-per-server = <something huge; default is 8>
* network.http.max-persistent-connections-per-server = <something huge; default is 2>

and there's where the trouble starts, for obvious reasons.

Note that these settings have a combined effect; for instance, setting pipelining to 8 would theoretically give you up to 64 HTTP transactions over 8 concurrent connections for a single page load.

In the "good net.citizen" department, it must also be said that the HTTP RFCs mandate a limit of two concurrent connections to an HTTP 1.1 server, and that several "stock" browsers have a self-imposed limit of four concurrent connections to an HTTP 1.0 server. Some HTTP servers can be configured to refuse the additional connections, so your mileage may vary.

Yes, you can see a marked performance benefit from enabling pipelining (mine is set to 16), and a power user might get some benefit from tweaking the max-per-server configs, but this is NOT something you want to do by default across your enterprise. Given this level of configurability, Firefox can easily become a stress tester for your HTTP servers/proxies.

--Wes

3 - Hello Kevin,
I met you at LotusSphere 2006. Hope you enjoyed the Conf. to its best.

4 - Thanks for chiming in Wes. I appreciate the extra clarification. FWIW I did say this may be a case of "if everybody does it, the whole system will crash"...now we've a better idea of why

I'm wondering if there isn't some "lockdown for deployment" toolkit for Firefox that would turn it into something of a managed client so this problem could be avoided altogether when IT shops deploy across the enterprise.

-Kevin

Your Host

KevinPettitt.jpg
Kevin Pettitt View Kevin Pettitt's profile on LinkedIn

Tools I Use

Idea Jam

Subscribe to This Blog

 Full Posts  Comments

MyYahoo
netvibes Add to Netvibes

Contact

Hosted by

OpenNTF

Disclaimer

This site is in no way affiliated, endorsed, sanctioned, supported, nor blessed by Lotus Software nor IBM Corporation, nor any of my past or future clients (although they are welcome to do so). The opinions, theories, facts, etc. presented here are my own and in no way represent any official pronouncement by me on behalf of any other entity.

© 2005-2017 Kevin Pettitt - all rights reserved as listed below.

Creative Commons License
Unless otherwise labeled by its originating author, the content found on this site is made available under the terms of an Attribution / NonCommercial / ShareAlike