Monday, February 16

Ultimate Guide To Web Optimization (Tips Best Practices)

Web optimization is a vital part of web development and maintenance but also something often overlooked by webmasters. Just think of the money you can save, and how it can potentially help increase your readership and traffic when they are properly done.


web optimization guide


If you have not done any optimization to your website (or blog) so far or merely curious how it can help speed up your site, please take a look at this list of optimization tips we’ve put together.


We’ve split things up into 3 separate sections for better readability – respectively server-side optimization, assets optimization (which includes web components like CSS, Javascript, images, etc) and platform, where we’ll focus on Wordpress optimization. At the last section, we throw in a couple of links we figured useful. Full list after jump.




Optimization: Server-side




  1. Choose a decent Web Host


    Your web hosting account has no direct relationship with the optimizations you are about to perform but we figured choosing the right web hosting account so important we decided to bring it to your attention first. Hosting account is the foundation of your website/blog where it’s security, accessibility (cPanel, FTP, SSH), server stability, prices and customer supports all play important roles. You need to make sure you are in good hands.


    Recommended reading:
    How to Choose a Web Host
    by wikiHow is a great article that gives you steps and tips you should know before purchasing any web hosting account.





  2. Host Assets Separately


    When we mention assets, we meant web components like images and static scripts that don’t require server-side processing. These includes any web graphics, images, Javascripts, Cascading Style Sheets (CSS), etc. Hosting assets separately is not a must, but we’ve seen tremendous result in terms of server stability with this implementation when the blog was having a traffic spike.


    Recommended reading:
    Maximizing Parallel Downloads in the Carpool Lane.





  3. Compression with GZip


    In short, contents travel from server side to client side (vicet versa) whenever a HTTP request is make. Compressing the content for sending greatly reduce the time needed to process each request.


    GZip is one of the best ways to do this and it various according to the type of servers you are using. For instance, Apache 1.3 uses mod_zip, Apache 2.x uses mod_deflate and here’s how you do it in Nginx. Here are some really good articles to get you familiar with server side compressions:






  4. Minimize Redirects


    Webmasters do URL redirect (whether it’s Javascript or META redirects) all the time. Sometimes it’s purpose is to point users from an old page to new, or merely guide users to the correct page. Each redirect create an additional HTTP request and RTT (round-trip-time). The more redirection you have, the slower user will get to the destination page.



    Recommended reading:
    Avoid Redirects
    by Google Code gives you a good overview on the matter. The article also recommends some practical ways to minimize redirection to increase serving speed.




  5. Reduce DNS Lookups


    According to Yahoo! Developer Network Blog, it takes about 20-120 milliseconds for DNS (Domain Name System) to resolve IP address for a given hostname or domain name and the browser cannot do anything until the process is properly completed.


    Author Steve Souders suggested that splitting these components across at least two but no more than four hostnames reduces DNS lookups and allow high degree parallel downloads. Read more on the article.





Optimization: The Assets (CSS, Javascripts, Images)




  1. Merge Multiple Javascripts into One


    Folks at rakaz.nl shares how you can combine multiple Javascripts like:


    1. http://www.creatype.nl/javascript/prototype.js  
    2. http://www.creatype.nl/javascript/builder.js  
    3. http://www.creatype.nl/javascript/effects.js  
    4. http://www.creatype.nl/javascript/dragdrop.js  
    5. http://www.creatype.nl/javascript/slider.js  


    Into a single file by changing the URL to:


    1. http://www.creatype.nl/javascript/prototype.js,builder.js,effects.js,dragdrop.js,slider.js  

    by manipulating the .htaccess and using PHP. Click here to read more.


  2. Compress Javascript & CSS



    Minify is a PHP5 app that can combine multiple CSS and Javascript files, compress their contents (i.e. removal of unnecessary whitespace/comments), and serve the results with HTTP encoding (gzip/deflate) and headers that allow optimal client-side caching.


    minify


    Compress them online!
    compress css
    There are also some web services that allow you to manually compress your Javascripts and CSS files online. Here are few we come to know:





  3. Customize Header Expiry/Caching


    header expiry
    Credit: httpwatch


    By using a customized Expiry header, your web components like images, static files, CSS, Javascript skipped unnecessary HTTP request when the same user reload the page for the second time. It reduces the bandwidth needed and definetely help in serving the page faster.


    Recommended readings:






  4. Off-load The Assets


    By off-loading, we mean separating the Javascripts, images, CSS and static files from main server where the website is hosted and place them on another server or rely on other web services. We’ve seen significant improvement here in Hongkiat by off-loading assets to other web services available, leaving the server to mainly do the PHP processing. Here are some suggestions of online services for off-loading:




    *Paid hostings – Paid services always have better reliability and stability. If your website is constantly requesting for the assets, you’ll need to make sure they are in good hands. We recommend Amazon S3 and Cloud Front.





  5. Handling Web Images


    Images are important part of your website. However if they are not properly optimize, they can become a burden and end up utilizing unpredictably large amount of bandwidths on daily basis. Here are some best practices to optimize your images:



    • Optimize PNG Images
      Folks at Smashing Magazine describes some clever techniques that may help you optimize your PNG-images.

    • Optimizing for Web – Things you need to know (the formats)
      Learn more about Jpeg, GIF, PNG and how you should save your images for web.


    • Don’t Scale Images
      Always practice inserting the width and height for each images. Also don’t scale down an image just because you need a smaller version on the web. For example: Do not force scale a 200×200 px image to 50×50 px for your website by altering the width and height. Get a 50×50 px instead.



    Optimizing with Web Services and Tools. Good news is, you don’t need to be a Photoshop expert to optimize your images. There are plenty of web services and tools to help you do the job.



    • Smush.it
      smushit
      Probably one of the most efficient online tool to optimize images. There’s even a Wordpress plugin for it!

    • JPEG & PNG Stripper
      A Windows tool for stripping/cleaning/removing unnecessary metadata (junk) from JPG/JPEG/JFIF & PNG files.


    • Online Image Optimizer
      Lets you easily optimize your gifs, animated gifs, jpgs, and pngs, so they load as fast as possible on your site, by Dynamic Drive

    • SuperGIF
      Effortlessly make all your GIF images and animations smaller.

    • Here’s more.




  6. Handling CSS


    Modern websites uses CSS as the foundation of the style, as well as the look and feel. Not only CSS gives great flexibility to changes, it is also lesser in terms of codes needed. However, if they are badly coded, it could be a backfire. Here are some checklists, or rather guides to you make sure your CSS are properly optimized:



    • Keeping Your Elements’ Kids in Line with Offspring
      How to keep your markup clean with CSS Selectors.


    • Keep CSS short
      When they give the same style, the codes are better the shorter they are. Here’s a CSS Shorthand guide you’ll probably need.

    • Use CSS Sprite
      css sprite
      CSS Sprite technique reduce HTTP request each time a page is load by combining several (or all) images together on a single image file and control it’s output with CSS background-position attribute. Here are some useful guides and techniques to create CSS Sprites:


    • Using every declaration just once
      When looking to optimize your CSS files, one of the most powerful measures you can employ is to use every declaration just once.

    • Reduce amount of CSS files
      The reason is simple, the more CSS files you have the more HTTP request it’ll have to make when a webpage is being requested. For example, instead of having multiple CSS files like the following:

      1. <link rel="stylesheet" type="text/css" href="main.css" />    
      2. <link rel="stylesheet" type="text/css" href="body.css" />     
      3. <link rel="stylesheet" type="text/css" href="footer.css" />   


      You can combine them into the one single CSS:


      1. <link rel="stylesheet" type="text/css" href="layout.css" />  



    Recommended readings:





Optimization for Wordpress


From time to time, we monitor, benchmark and analyze the performance of our Wordpress blog. If the site is running slow, we need to know why. Here are some basic changes we’ve done and we figured will significantly increase the speed of your Wordpress blog.




  1. Cache Your Worpress Blog


    WP-Cache is an extremely efficient WordPress page caching system to make you site much faster and responsive. We also recommend WP Super Cache which enhances from the previous mentioned plugin and too does a great job.





  2. Deactivate and Delete Unused Plugins


    When you notice your blog is loading real slow, see if you have a lot of plugins installed. They might be the culprit.




  3. Remove unnecessary PHP Tags


    If you take a look into your theme’s source codes, you will find a lot tags like these:


    1. <?php bloginfo('stylesheet_directory'); ?>  

    1. <?php bloginfo('description'); ?>  

    They can be pretty much replaced with text content that don’t cause load to the server. Check out Michael Martin’s 13 Tags to delete from your Wordpress Blog





Recommended Readings:



Last but not least…


Here are some useful web services and tools that gives you a broader perspective and better analyzation to help you in web optimization.




  • Yahoo! YSlow


    YSlow analyzes web pages and suggests ways to improve their performance based on a set of rules for high performance web pages. It gives you a good idea what needs to be done in order for the website to load faster.


    (Firebug required)



    yahoo yslow




  • PageSpeed


    Similar to Yahoo! YSlow, Google Page Speed is an open-source Firebug add-on to evaluate the website performances and how to improve them. (Firebug required)


    pagespeed





  • Pingdom Tools


    Pingdom Tools take a complete load of your website including all objects (images, CSS, JavaScripts, RSS, Flash and frames/iframes) and shows you general statistics about the loaded page such as the total number of objects, total load time, and size including all objects.


    pingdom




Recommended readings:
Here are more tips and tools worth checking out.



No comments:

Post a Comment

.

Related Posts with Thumbnails

Labels

...etc) *Big Bang experiment hacked 100 Excellent Free WordPress Themes 100 Keyboard shortcuts (Windows) 117 Run Commands In Windows Xp 12 Sites To Create Cartoon Characters of Yourself 13 Computer keyboards you’ve never seen before 160+ Mega Web Design Tutorial Roundup 17 Useful iPhone Applications You Should Install 20 best ebooks sites 20 Best Websites To Download Free E-Books 25 (Free) 3D Modeling Applications You Should Not Miss 25 Websites To Have Fun With Your Photos 26 Sites That Pay You to Blog 27 Must-Have Starter Kits For Web Designers 30+ New Useful WordPress Tricks 35+ Essential Web Design Resources on Best Practice 40 Creative and Inspiring Website Backgrounds Techniques 42 Free Online Magazines for Designers 50 Amazing Wildlife 50 Best CSS Web Design Resources for Webmasters 50 Greatest Computer Workstation (PC/Mac) Setups 50 Useful New jQuery Techniques and Tutorials 60 Excellent Free 3D Model Websites 60 Most Beautiful Apple (Mac OS X Leopard) Wallpapers 7 Design Resources for iPhone Developers 75 Top Best Design Resources of 2008 9 Alternative Ways To Access Blocked Sites 99 Facts about Guyz(Very True)... A-Z of Free Photoshop Plugins and Filters Activate header in Yahoo/Gmail/Hotmail and find IP information Adding Items to the Start Button Administrator Password Hack Airtel Free Mms AirTel Free tricks airtel hack All Software links Alone (In a Crowded Room Animal Wallpapers Automatic Administrator Login Automatically Kill Programs At Shutdown AVI Best Color Tools For Web Designers Best Way To Lock Your Folder Without Any Programs BIO DATA OF A MODERN GIRL Break into email accounts Bypass windows validation C-C++ projects with source codes Call anyone from any persons number free...... CDMA Phones Secret Codes Cellphone hacks chat with command prompt Cheat codes for default games in windows xp-2 Check Your Mobile -Software / IMEI / SimLock Unlock code Clear BIOS password Convert web site 2 wap site Cool Futuristic/Concept Gadgets That Really Inspire Crack CD protection Create a new fake virus to spoof Antivirus Create a Shortcut to Lock Your Computer Create Multiple Websites Under 1 Shared-Hosting Account d: Disable USB Drives Disabling Drives in My Computer Disabling My Computer Display legal notice on startup DivX DOTNET SITES download any video YOUTUBE GOOGLE VIDEOS PAKREEL METACA download youtube videos to ur computer Downloads and online resources for computer stuff Drop-Down Menu: 30+ Useful Scripts to Enhance Header Navigation Dwnld FREE NOKIA INTERNET RADIO: e: Ebooks Edit ur PC Window setting electronics Fake hacking-spam Free gprs settings for any operator network free SMS Free sms sites FTP: Free Clients and Alternative Connection Methods Giveaway: Free Hosting Accounts Google Hacking Database (GHDB) Google Offices (Googleplex) Around The World [Photos] GPRS GSM Secret Codes Hack [Sify hack using NetBIOS ( hacking someones remote computer) Hack yahoo through tro messenger Hacker tools Hacking computers through telnet Hacking in schools and colleges Hacking internet Cafe Hacking Websites Hacks High Flier Home How To Access Blocked Web Sites How To Become A Hacker How to change ur IP on networks How to convert Tivo How to get ip address of person u r chatting with on msn messenger How to hack through winamp How to Hide the drives(c: How to Lock a Folder Using Notepad How to make keygens How To Shut Down All Pc(s) On the Network How to Solve Access Denied Deleting Files Folders HTML Table Building: 30+ Beautiful Examples and Useful Javascripts Important SITES list Increasing options in add/remove programs Ip address explanation continued ip locator .......find the location of a ip jokes Learn How To Hack | Tutorials On How To Hack | How To Hack LEARN SIMPLE VIRUS PROgRAM USING ...NOTEPAD.... Macro Photography: 50+ Remarkable Bits of Life We Overlook make a fake page of ur own for any website McAfee Total Protection Menu Delays MMS Mobile tricks More in email hacking Motorola Secret Codes MPEG MPEG4 No Shutdown Nokia secret codes Notepad time and date trick Opening a DOS Window to either the Drive or Directory in Explorer Other smart ways to Bypass the Windows genuine advantage Validation Others] Speed Upto 10 MBPS [Beam Cable Hack] Predictions of our world Protect urself.know what hackers do PSP etc RADIO ONLINE RealMedia videos and many more to iPod Recycle Bin Edits Reliance RESUMES Samsung Secret Codes School/cllg server hacking......hack ur school server search engines and mails SEARCH files in RAPIDSHARE.com SECURITY Send SMS to anyone from any persons number Shutdown someones comp over msn and all SITES Sites for free sms (PC to Mobile) SOME USEFULL IP TRICKS N TIPS Sony Ericsson Secret Codes Speed up Mozilla Firefox about 3-30x Faster speed-up-menu-display.html' Speeding Up Share Viewing Spy phishing Start Your Computer in a Second technology TEMPLATES Tips and Techniques To make folder delete protected Top Paying CPM Advertisement Network tricks mobile Tutorial: How to hack a site tutorials Ultimate Guide To Web Optimization (Tips Best Practices) Use any USB stick As Ram Advanced search USEFULL LINKS Vedic Maths Vehicles - sQuba (World's First Swimming Car) Very official love letter Virus Virus made in c++ Want 2Trace Location of Enemies Mobile no.? WANT FREE USERNAME AND PASSWORD OF ANY SITE????? want to see your system hardware information Watch Any Movie In Paint (100%) Working Watch FREE Live Internet TV *** What is neuclear deal???? When I'm with you Windows keyboard shortcuts you never knew existed very helpful Windows Media Player Tricks WMV Xvid Yahoo messenger hack Yahoo webcam hacking (1000% working) You Are My Everything Your Mobile Doesnt Support all Indian Lanuages