10 Practices to Speed Up Your Website
Do you like fast websites? We’re sure you do just like search engines and metrics companies that use website load time as a parameter in their rankings. For website visitors waiting is one of the most annoying things on the web. And if in real life speeding is dangerous for you, in virtual world speed is essential for successful website – lack of speed means death for your website.
Nowadays such factors as user experience and user-friendliness are really important and may determine whether your website will succeed in future or not. We should never forget about our big brother Google which considers website load time as a part of their ranking algorithm.
Below you’ll find some tips and tricks that will give wings to your website. Maybe you’ll be confused about some specific terms but we believe that after spending some time on Wikipedia things will become clear for you. Of course we are always glad to discuss this topic in our comments section.
Parallelize downloads across hostnames
Use URL paths instead of hostnames
Browser and proxy caching
Put CSS in the Head
Serve scaled images
Take care about requests
Correct order of styles and scripts
Actually smart usage of this method can give you amazing results. You should remember that most static resources can be parallelized and the main task is to create a balance between all hostnames for all static objects. Anyways the main rule here is that any of your hosts must not serve more than 50%. Remember that the optimal number of hosts is between 2-5 hosts, so don’t misapply it.
The main trick behind this problem is that you need to control the number of multiple properties that are hosted on the same domain. The best solution that will help you to unload these properties is assigning them to different URLs but not hostnames. For example if you need to host your blog than make it website.com/blog instead of blog.website.com. This will help you to minimize DNS lookups and allows more efficient use of TCP reconnections that will reduce the number of round trip times.
Everything is simple here – you should choose appropriate type for your images (choose wisely between PNG, GIF and JPG) and don’t forget to use image compressor. Also correct specifying image dimensions (width and height) allows browser to perform faster rendering
These are best friends for your website – by setting up expiry date you’ll force your browser for downloading the previously downloaded resources from local disk and proxy caching will leave your original remote server in peace by using proxy servers.
By placing CSS properties blocks in the header of your website you’ll improve rendering performance. Another important thing about CSS is that you should keep in mind that good old IE is still alive and kicking. This means you may want to avoid using CSS expressions which are good only for IE 5-7 and that other browsers don’t support.
Using gzip or deflate will help you to reduce the number of bytes sent over the network. Data compression for HTML, CSS and JS files are widely supported by modern browsers and sending this content in more compact form helps to reduce download time.
Again, it will help you save some bytes. Also you’ll reduce network latency and improve compression.
Scaling the images in a proper way is very useful tool for your website because it reduces the number of unnecessary bytes sent by you.
Minimize HTTP request size by using server-side storage for most of the cookie payload and removing unused and duplicate cookies. Avoid bad requests such as broken links or 404 pages. Minimize HTTP redirects from one URL to another – this is another way to minimize round trip times.
The correct order will optimize the parallelization of downloads and will improve browser rendering time.
Well, this is about it. Those are only the basic ways for improving your website load time but it is a good set of tools for you to have something to start with. In case you’re interested in digging more deeply please feel free to browse the set of recommendations from Google on page load time issue.