In this article you will receive valuable tips on how to improve website speed and performance. The guidelines are put together to help to optimize the website to improveyour pages loading speeds.
So many times I have visited sites that loaded too slowly and even after all that knowledge about how to succeed in speeding up your web pages loading, the web teams resist to put this into practice.
So, in order to see where my site stands today, I used a good speed testing tool called Gtmetrix.com ( http://gtmetrix.com/reports/www.vitalyonline.com/jzIuNU2l) and Webpagetest.org (http://www.webpagetest.org/result/130506_A4_1B93/) or you could use Google Page Speed Test service: https://developers.google.com/speed/pagespeed/insights. in the past I used http://www.websiteoptimization.com/ services. Each of them provides good detailed reports on what needs to be inproved in your site. Below are a couple of screenshots you get after running the tool. Remember, that it took me some time to get to the stage when I will see A’s in the reports. I simply followed their instructions and then outlined below briefly what you can do to improve your website.
If you own the website and would like to know what potentially is slowing it down or how to improve its loading speeds, and then continue reading a few ways to speed up your website:
Choose a good host
First and foremost, choose a good host. There are plenty of web hosting companies that offer “unlimited” shared hosting. However, you should remember that you are not the only one who likes the deal. And therefore, you may consider avoiding such type of hosting. The more people “share” the same resources, the more likely that your website loading will be slow. Virtual hosting or Private hosting would be an ideal if you want to avoid loading speed issues. Invest in a decent hosting. If you place in the House BEGET hosting $ 3/mes. do not expect to break any speed records. If you’re a serious geek, you want to spend money on a decent hosting setup. I saw a great performance from some shared hosting packages (multiple sites on one server). But for the fastest installation must have one or more dedicated servers. Do your research to see what hosting service will be benefitial for you.
Organize your images and store on a secondary domain
Put your images on a separate domain. Point the subdomain as “pod.vitalyonline.com” to store images. Put your images there. Web browsers can load multiple domains at the same time, giving the impression that your site faster. In addition, you will use less bandwidth of your own server and processor. Every little bit helps.
Use CDN, a high-performance network of servers
Or just place the image on Flickr, or radical, and use them as a separate domain. Essentially, a CDN, or content delivery network, takes all your static files you’ve got on your site (CSS, Javascript and images etc) and lets visitors download them as fast as possible by serving the files on servers as close to them as possible. A CDN is a high-performance network of servers across the globe that replicates the static assets of your website and serve them to visitors from the closest POP. I don’t use CDN services yet, but considering to do so. Very robust technology allows your site to get speeds you didn’t think was possible to achieve. There is a good article on CDN [glossary_exclude] http://encyclopedia2.thefreedictionary.com/Content+Delivery+Network[/glossary_exclude]:
Compress your images
Image compression using the correct file type. Use compressed JPEG-images and images with many colors. Use the “lossless” compression of PNG and GIF with only a few flowers.
Resize your images before uploading
Resize images before uploading. Do not change the size of the image using the width and height! Resize with Photoshop or Fireworks, or any other image editor. Besides resizing them, make sure that your code has width and height of images indicated. The server does not need to spend extra time to calculate your image sizes.
Learn how to write decent code
Learn to write decent code. Medium business content management system (CMS) or basket spits out nasty HTML code. Any server can generate clean code with a little tweaking. Thus it can be configured. Try to avoid unnecessary features that are offered by open source CMS such as Joomla, Drupal or WordPress. Consider first designing your simple HTML page by using an HTML editor. Once you’ve learned basics in programming, you can move on to CMS, which can be tweaked and programmed to incorporate reliability, stability, and fast delivery.
Put CSS files in a separate file
Put CSS in a separate file. Files CSS, not embedded in each page.
Devide your CSS
Divide your CSS. Create a style that contains only styles that are used on every page of your site. Then create a separate style for each unique page layout: Your home page, a typical article, a typical product page, etc. Load only what you need on each page. Very often you may need to choose <link> over @import. Styles should go at the top (in <head> tag) of the page and scripts at the bottom (before </body> tag).
Learn how to use CSS
Learn how to use CSS. If you can use instead <p> favorite color = “blue” style = “font-size: 10pt; font-weight: bold;”>, you’ll end up saving a lot of space. And people like me will not laugh at you.
Devide your JavaScript
Divide your Javascript, as you share your CSS.
Postpone availability load
Postpone availability load where possible. You can do a Google search for “delayed JavaScript” and get some great resources for this.
Use less flash
Flash. Just do dont do it. There are many other ways to animate elements on the page. If you must use Flash, and then use it only in small nuggets in the page.
Use GZIP compression
Set GZIP compression on your web server. Gzipping reduces the size of the HTTP response and helps to reduce response time. It’s an easy way to reduce page weight. You can enable it by adding the following code to your .htaccess file:
<IfModule mod_expires.c>
# Enable expirations
ExpiresActive On
# Default directive
ExpiresDefault “access plus 1 month”
# My favicon
ExpiresByType image/x-icon “access plus 1 year”
# Images
ExpiresByType image/gif “access plus 1 month”
ExpiresByType image/png “access plus 1 month”
ExpiresByType image/jpg “access plus 1 month”
ExpiresByType image/jpeg “access plus 1 month”
# CSS
ExpiresByType text/css “access 1 month”
# Javascript
ExpiresByType application/j-avascript “access plus 1 year”
</IfModule>
Minimize your HTML, JavaScript, CSS
Minimize all: HTML, JavaScript and CSS. Save, not just a smaller version for editing. Do not use the managed server, “on the fly” solution, however. This only increases the overhead and the server is in fact large amounts of traffic, will pull things down.
Minimize redirects
Minimize redirects. Do not use a 301 redirect, if you need. Fix it before you redirect.
Fix canonicalization issues
Fix canonicalization issues. “Fixed” does not mean “use REL = canonical.” It means “make sure that every page on your site has a single address. This will improve cache performance, lower memory consumption and speed up the process.
Setting up caching on the server
Setting up caching on the server. If you use WordPress, use a plugin like W3 Total Cache. If you use another tool, learn it and caching. Your server does not include caching, or can. If you bought it from the Pygmies, who worked at a chocolate factory down the road.
Create static pages
If you create a site on PHP, ASP or another scripting language, most likely, all the pages in PHP, ASP or the relevant language. Some of the pages, though, as “About Us” and “Privacy” to change so rare that you can likely make them completely “static.” HTML pages. By doing this, you eliminate one set of calls to the server’s CPU. This small but immediate increase in productivity.
Learn to compress VIEWSTATE variable for .NET
If you are running .NET, learn to compress VIEWSTATE variable. These suckers take up much space in your code. Better yet, get rid of VIEWSTATEW variable until it is needed.
Reduce the amount of DNS requests
DNS-requests is the physical distance between your host and the DNS-server. DNS-server is a server, the problem is name resolution (symbolic addresses) host IP-address, and vice versa. When you press the “Go” button in the browser – the browser at this point sends a request to a DNS server to obtain the IP address corresponding to the address or other http://www.vitalyonline.com.
DNS-requests are time-consuming to search for IP-addresses for the host. The web browser is powerless as long as the search is complete. Reducing the number of unique hosts, you can increase the response time.
Use Keep-alive
Keep-Alive – is a signal having a specified interval. It is very important for the Internet. If the signal is sent, but no response is received, the link will be considered defective, and the data will be transmitted by other means as long as the link is restored.
Keep-Alive allows TCP-connections to stay alive, which, in turn, will reduce the delay for subsequent searches. So, contact your hosting provider and ask them to think about it! Most hosting providers disable Keep-Alive, as it is an optional feature.
Put CSS files at the top, and JS files at the bottom of the page
Posted CSS web pages will prevent progressive rendering, so browsers will block it. Avoid having to redraw elements of a Web page so that users are not faced with completely white web page until it is fully loaded. Thus, the web page will correspond W3-standards. For this reason it is necessary to place JS in the bottom of the web page.
There are many different methods of acceleration loading web pages, but we covered only the most important of them. Of course, the speed of loading web site should not be your goal number 1, but even for a perfect website with poor load times will not be easy to achieve positive results! It is an ongoing process that requires the understanding of code, knowledge of newest technologies, and patience. Results will come if enough time is invested into this process!