Happy New Year to all! I wanted to put out a group resolution for the new year - improving web performance. To make things easy I wanted to focus on just two, basic, fundamental items that every site should support:
1- HTTP keep alive 2- HTTP compression There are plenty of others, but if we can get everyone on board with these two it would be a good start. These are both server level items so they require no changes to the site design or code. HTTP keep alive allows for persistent connections, which saves on the over head of creating and breaking down new connections for each resource request. Enabling this is usually very simple, Apache has a few directives that control it - http://httpd.apache.org/docs/current/mod/core.html#keepalive. There a situation, very rare, where keep alive should not be turned on. The only case that I know of for that is where your web server or load balancer doesn't properly support keep alive. Today this should be fairly uncommon, however I am working with one site where this is the case and we are working on moving it to different software that doesn't have these types of bugs. Using HTTP compression allows the server to provide a compressed response, sending less data over the wire. The mod_deflate module in Apache does this and is easy to setup - http://httpd.apache.org/docs/2.2/mod/mod_deflate.html. In general you should only enable compression for items that you know will benefit from it. That usually means text based data that is over 1400 bytes. Some older web browsers have bugs in their compression support, but these are fairly well known and are listed in the Apache docs - http://httpd.apache.org/docs/2.2/mod/mod_deflate.html Other web servers besides Apache have good support for these features as well. If you can't find details via Google on how to enable them then ask around and write up the details so that others can benefit. So how do you determine if your site supports these two features? One simple way is to run a test using webpagetest.org. It produce a detailed report on the performance features of your site. I recommend testing with these parameters: - Test Location: New York - Browser: IE 8 ( I know, I know, but still the most widely used browser in the world - http://gs.statcounter.com/#browser_version-ww-monthly-200912-201012-bar ) * Advanced Settings: - Connection: FIOS 20Mbps For everything else you can take the defaults. Here is what the test results look like for uphpu.org - http://www.webpagetest.org/result/110106_PW_7V1G/ - just so you have an idea of what it looks like. We need to turn on keep alive and compression there :-) If you are excited about site performance there is a flood of information available. I'd be happy to chat in more detail with people about site performance and point to additional resources. -- Joseph Scott [email protected] http://josephscott.org/ _______________________________________________ UPHPU mailing list [email protected] http://uphpu.org/mailman/listinfo/uphpu IRC: #uphpu on irc.freenode.net
