It's been awhile since I first posted a few simple tips on how to speed up Firefox performance. Some of the information is outdated, so I thought a recap might be a good idea.
All of these tips can be implemented by anyone who knows how to use their keyboard and mouse. No advanced knowledge is required. With that said, however, the adjustments we'll be looking at can have adverse effects when visiting certain websites. I'll note possible concerns with each tip so everyone can decide for themselves if that particular tip is for them. Each of these will help speed up Firefox, independently of the others, so don't feel like you have to use all of them if you don't want to.
To start your tweaking, type about:config
in your Firefox location bar. This will bring up a list of hundreds of preference settings. All the changes we'll be making can be done here. Use the filter bar just above the list of preferences to "drill down" to the preferences you need. There are Firefox extensions that will allow you to change most of the settings we'll be talking about in more of a GUI environment, but I prefer to do it in about:config
since installing extensions can tend to have a hit on Firefox performance.
http://www.webmasterworld.com/forum119/445.htm
So on to the actual preferences you'll need to set. To change a preference, double-click it and enter the new value.
network.http.sendRefererHeader
- This setting controls whether or not Firefox will send a "referer header" for the pages and files it requests. Sending the referer header takes time, actually more time than you might think. Turning it off can improve your browsing speed quite a bit. The default for this one is '2', which means Firefox will send the referer header for page requests AND for images. Set this preference to '1' to send a referer header for page requests only (faster), or to '0' to not send referer headers at all (fastest).
WARNING: Disabling the referer header can cause some websites not to work correctly; for instance, Buy.com requires the referer header during the checkout process. Only set this preference to '0' if you think you'll recognize related problems if/when they occur. I can't imagine any problems that might be caused by setting this preference to '1' (send referer header for page requests only) and that should improve performance dramatically on most websites.
TIP: The excellent Web Developer extension allows you to enable or disable referer headers with just two clicks. This option is listed under the "Disable" menu on the Web Developer toolbar.network.http.pipelining
- Enabling pipelining allows Firefox to request files (such as images, external CSS and Javascript files, etc.) at the same time instead of individually. The default for this preference is FALSE. Double-click it to set it to TRUE. Enabling pipelining is one of the biggest ways to boost your browsing speed, provided you have a high-speed connection. Pipelining on a dialup connection may have a less noticeable effect.
WARNING: Pipelining is not well-supported (at all?) on Microsoft web servers. Most of the time everything will still work fine; however, some rare websites (most notably Adobe) that are hosted on Microsoft servers will slow to a crawl if you try to browse them with pipelining turned on. I have only run into this on about three or four occasions in over two years of surfing with pipelining enabled; still, it pays to know the symptoms so you can temporarily disable pipelining if you need to.network.http.pipelining.firstrequest
- As the name implies, this setting (supposedly) controls whether or not Firefox pipelines the first request for a pageview. I don't see what real-world difference this setting can make, but I always set it to TRUE anyway, just in case. The default is FALSE.
WARNING: The comments above about pipelining may also apply to this setting - or maybe not. I honestly don't know.network.http.pipelining.maxrequests
- This is the maximum number of concurrent requests Firefox is allowed to make. I used to recommend setting this to a high value, around 32 or so. I have since found out that this can have serious implications for web servers that may get overloaded trying to respond to so many requests all at the same time. I don't have any statistics on what a good upper limit for this setting would be, but I have mine set to 16 which seems to work well (possibly better than 32 in the first place). From what I've heard, I would not try setting this higher than 16. Depending on your connection speed, you may have better success setting this to an even lower number.
WARNING: Setting this too high may set off security triggers on some web servers and could get you banned from some websites. Keep it to a reasonably low number in the interests of courtesy and convenience to website operators.network.http.proxy.pipelining
- If you're behind a proxy, you may want to set this value to TRUE as well. Default is FALSE.
WARNING: I'm not sure if any proxies would have problems with pipelined requests or not. Maybe someone who knows more about proxies could comment on this.nglayout.initialpaint.delay
- This preference doesn't exist by default, so you'll have to create it. Right-click on some whitespace inabout:config
, point to New, then choose Integer. Enter a number between 0 and 1000 (or more if you like, but I don't recommend it) then click OK. This setting stipulates how many milliseconds Firefox waits to start rendering a page after it starts to receive data. The default behavior is 250. I usually set mine to 0, meaning Firefox will start rendering the page with no delay at all. This provides near-instant feedback while browsing. Setting this preference to a higher number - 250 (default), 500, 1000, etc. - will allow Firefox to download more data before it starts to render the page. Some people prefer to set this to 1000 or so, which will give a one-second delay before the page starts to render, but will usually render the entire page all at once in the blink of an eye. Try several settings and see how you like it best. Setting the delay to 0 may actually slow down browsing slightly, but gives an illusion of speed since the rendering begins immediately. Setting a long delay doesn't give feedback so quickly, but you get the whole page all at once instead of in chunks, which seems faster to some people.
WARNING: Setting this value below 250 may cause minor rendering problems on some table-based websites. This usually is not a problem, normally being a minor inconvenience at worst.browser.cache.memory.enable
- This preference allows Firefox to cache pages and files in memory, which can allegedly improve performance with the back and forward buttons. I've never noticed a difference myself, but I imagine mileage will vary on different systems. Default is TRUE so you probably don't need to change this one.browser.cache.memory.capacity
- Only used if the above setting is set to TRUE. This setting controls how much memory Firefox is allowed to use for caching purposes. Supposedly, setting this to a higher number can improve performance, provided you have enough free memory in the first place. Again, I've never noticed a difference from this.- A Note on the Cache: Firefox tends to slow down a bit as your cache (disk cache, not memory cache) nears its capacity, particularly if you're using a higher than average cache size. Clear your cache periodically to avoid this performance hit. I use the Clear Cache Button extension, which gives a toolbar button to quickly clear the browser cache. (This can also be useful for developers who need to be sure they're viewing the most recent version of a page but don't want to disable the cache entirely.)
More Ideas:
There are other Firefox settings that can help with performance, but they tend to be very specific to the kind of system you're running Firefox on. A partial list can be found here. Most of these other settings are more advanced, and should only be attempted by those who are fairly familiar with Firefox. If you choose to play around with any of this advanced stuff, be sure to write down your current settings for the relevant preferences so you can get them back if you need to - I have run into serious problems with some of these settings, particularly content.max.tokenizing.time
. Please Note: The page I linked to above tells how to adjust these settings in your user.js file. Unless I'm mistaken, all those settings can also be changed in about:config
.
Updated information on how to get the most out of Firefox
Source: Wedmasterworld.com
No comments:
Post a Comment