Immigration Financial Information Bangladesh Gateway General World Cup Entertainment Programing University and College Scholarship Job Interview Health Job

Sunday, November 8, 2009

Website Speed Factors

Speed
Speed is a measure of how fast a web site responds to user input. There are two main components to web site speed, 1) initial download and display speed and 2) the response time of particular web page elements to user input. Users are sensitive to download speed (King 2008), with tolerable thresholds that depend on perceived complexity, bandwidth speed, and other factors (such as age). But page element delays (after a page has loaded) are even more important to minimize than download times. This study tested the effects of varying post-display response times on user satisfaction.
Here are the tips for website speed:
1. Get A Fast & Less-Loaded Web Server
This is a must. Whatever you do to make your website faster, if it is served slow, there’s nothing to do.
Make sure that the server your website is hosted has low ping values & it is not over-loaded. Specially if you’ve a database and/or using dynamic files (like asp, asp.net, php, ruby..) server over-load can kill the performance.
If you’ve a simple website with few visitors then shared hosting is ok. For a website getting popular, think of a VPS with guaranteed RAM & CPU usage. If the website is already popular, a dedicated server will be the best performing one.
2. Know When To Use GIF, JPG & PNG Files.
Playing with the quality of images will dramatically lower the sizes of them while they will still be looking good.
GIF is suitable for images with few colors like logos, text & line art. When saving a GIF file, make sure you use a small color pallette (learn more).
JPG is good for images with lots of colors & details like photographs. Decrease the quality of a JPG image before saving. It will still look good for a web image (learn more).
PNG, a format specially for websites, has great quality – both transparent & non-transparent – is specially functional when you’re in need of quality transparent images. Don’t forget that IE6 has problems in displaying them (learn more).
3. Use XHTML – No Tables
This is easy to tell but may be harder to implement for anyone that has few experience with XHTML.
The thing is, tables are rendered slower than DIVs by browsers. You can do more with less code & no need to say it is much better to be compatible with any browser (including mobile browsers), in means of SEO, etc..
Update: There may be cases when using tables are much more logical like "tabular data". You may have to code a lot for creating the look of a simple 5 columned table. Don’t do that & use tables when needed.
What is tried to be mentioned here is, use XHTML rather than tables in general. But don’t try to draw images with XHTML.
4. Use CSS Smartly & Compressed
• Mention every style in CSS files.
• Find the common properties in objects, define them once & try not to repeat them.
• If using a significant amount of totally different properties for a specific page, define them in another CSS file & only include on that page. So users viewing other pages won’t need to download those properties.
• Compress your CSS file (you may try this, this or this).
5. Merge & Compress JavaScript Files
Try merging JavaScript files prevent multiple includes (see step 6).
If a JavaScript file will be used only in few pages, try to include them inside those pages only (like CSS in step 4).
Compress JavaScript files. It lowers the size seriously & doesn’t have any bad effects on your side. This & this are some of the popular compressors.
6. Manage Included Files Better
There may be several files included in webpages like CSS files, JavaScript files and other JavaScript files for statistic services, social bookmarking sites, widgets & more.
Try to decrease the number of these files:
• If using digg-reddit-like voting widgets, don’t use them in stories that won’t hit the frontpage & remove the ones that were submitted few days ago as they won’t have any help after sometime.
• Use only 1 statistic service if possible. Every web-based service requires new files to be installed & they are called each time a page is loaded.
• Host files on your side & don’t use web addresses as file paths.
o If you’re using any JS frameworks like jQuery or MooTools, don’t call the .js files from their websites but download & upload them to your website.
o Don’t try to call any file from a web address like "http://.." as this always requires dns queries to be done & will work slower.
• PHP Speedy (WRD post)is a very effective solution that does all the combining & compressing automatically. You may want to try it.
7. Use HTTP Compression
HTTP compression is one of the most effective step with a little effort.
Today, almost every browser & web server supports HTTP compression. Using it, your files are sent to the visitor compressed & un-compressed on their side & you can have up to 90% success for the text based files (like HTML).
You have 2 popular choices with this:
• HTTP compression: a feature of the web server (can be enabled on the server side)
• Gzip: can be enabled at the site level. Here are more details.
• Further readings:
o HTTP Compression at Wikipedia
o Speed Web Delivery With HTTP Compression – By IBM DeveloperWorks 8. Better Coding
This is for websites which does not use any ready-to-use systems like Wordpress, Drupal, ExpressionEngine or similar (if you’re using these then you’re lucky as they are already well-coded).
Besides the better XHTML & CSS coding, the dynamic coding of the website directly effects the performance.
As you can guess, this is a huge subject. But there are some major things like:
• Seperate the static & dynamic content. This will help writing less-code.
• Create smart & effective functions. For ex: if you’re going to use a user’s name & birthdate at the same page, don’t run 2 queries or functions, your function must call 2 of them. Simply, try to do everything once.
• Connect to the database as few as you can & once connected, call only the data you need.
• Try to keep database sizes small. If you’ve a large database, sometimes seperating it into several databases perform better, specially for the data which is reached not so often. From the server’s point of view: 4-250mbs of dbs perform better than 1-1gb of db.
9. Cache Webpages
Caching is a superb way of decreasing the stress on the server by running more static files & less queries. It simply saves a static, HTML version of the page to be displayed & displays that file rather than the dynamic one.
For CMS applications like Wordpress, there are already ready-to-use caching plugins (like WP-Cache). For PHP, here is a great article from SitePoint.
A small note, caching can also be done at the web server level. But if you’re on a shared hosting account, you better be lucky to have it on.
Site loading speed depends roughly on these factors:

1. Hosting server
a) speed (DNS timing test from http://www.dnsstuff.com/ )
- server hardware: processor, RAM(?)
- server connection to internet (can somone say what is considered as fast xxMB/s ? )
b) location (IP information from http://www.dnsstuff.com/ )
Site will open slower for a visitor from China then for US visitor if the hosting server is located in US. Check for any site how fast it opens from Europe, China, US : http://alertra.com . You can ask some friends from various parts of the world (via MSN...) to open your site and tell you secunds until opening.
c) crowdness
Check how many domains are already hosted on your nameserver: http://www.domaintools.com/ns-spy/ You don't even not need to know your nameserver url, just input your domain and it will tell you nameserver's name. Then input nameserver. (You can check any domain you want, not only one you own).

(Some) hosting servers arranged by speed/continent/country:
http://HOSTINGSPEEDS.com (http://web.mail386.com/util/go.php?url=http%3A%2F%2FHOSTINGSPEEDS.com&Horde=6d76f3c60175c07224d14a07b49f6664)

2. Your connection type and current speed: http://speedtest.net You can set up results as Mb (megabits) or MB (megabytes).

3. Your site's Home page size/speed websiteoptimization (http://www.websiteoptimization.com/services/analyze/) test from the first post. Optimal Home page size does not exceed 100Kb.



A solid way to make your website faster is have your site coded to W3C standards.


Ways to speed up your website
HTML issues:
- Use CSS where possible: Bees because path style sheets load faster than those web sites designed with font tags and tables, and also it’s much faster and easier to make changes. (Some resources on CSS –
http://www.webcredible.co.uk/user-fr…resources/css/
http://www.websitetips.com/css/ )
- Stay clear of nested tables: Nested tables are basically tables within tables, but too many of theses can really slow down the browser. When a page loads the browser starts from the top and goes down in a consecutive manner, with nested tables it has to find the end of the table before it can display the entire thing.
- Specifying height and width: For tables and images it’s a good idea to specify their height and width, as it helps out the browser and therefore speeds up the process.
Page size:
- Reduce the number of images where possible: Most common causes of slow web pages are images, but they are also the easiest to fix. Try to eliminate repeat and unnecessary images, so they are not downloaded the second time. And also try not to use images for words, unless it’s absolutely necessary reason being the download time and also they can’t be searched.
- Reduce the size of images: Everybody uses different techniques (e.g. converting to JPEG), but as long as the images are compressed it’s beneficial for everyone.
- Remove unnecessary multimedia: This includes video, audio, flash and animation, if it isn’t important then it shouldn’t be on the page.
- Remove unnecessary scripts: Some codes can slow down the site, consider evaluating the codes and making them better if possible.
- Remove unnecessary META tags and META content: META tags don’t achieve very much anymore, people used them for search engine optimization but due to misuse they don’t hold much importance in Search Engine Optimization.
Web host:
- Bandwidth: Make sure you have enough bandwidth allocated, it’s a good idea to attain more bandwidth then needed just in case of a sudden rise in traffic. If you’re website is nearing its limit the website speed can decline significantly.
- Capacity of severs: There’s a limit as to how many people can access your website so once again if your web site is growing in traffic, you should consider upgrading your service.

No comments :

Post a Comment