Part 1 of this series had a little checklist before going live to ensure that we are ready from a security perspective and our site is healthy and remains healthy.
This part will cover more performance specific tips that I collected over the years.
The web builds on top of HTTP, HTML, CSS, JS, …
Web performance is about
- Minimizing the data that you send over the wire
- Minimizing the time spent on each pageview
- Deliver as little as possible on each page view
- Do as little as possible on each page view (on the server and the client)
#1 Tune your web.config for performanceMads Kristensen has written some awesome tips and tricks to get more out of IIS and ASP.NET.
Check this 2 links
#2 Have an automated test tool that monitors the uptime of your site
Obviously you want to know if your site is down for whatever reason (DNS, database, configuration error, …)
Use one of these services on the following page to ping your site every second, minute, hour, whatever your server can handle.
Figure: What about monitoring your zsValidate page? Ping the page every 5 minutes and check for #AllGood…
#3 Have Google Analytics (or a similar tool) on every page
Track your users going through the site, to know what they are looking for and optimize your site regarding your users needs.
The next 2 tips are about creating a performance baseline, that you are going to use for future reference.
#4 Check your website in YSlow and establish a baseline "Grade" that you expect to be the minimum over time
YSlow gives you a rating of your page performance. http://developer.yahoo.com/yslow/
Talk to your team and establish a baseline that you want to keep over time
(Implementing new features normally degrades your performance, so you have to work hard to keep performance to this baseline)
#5 Check website in PageSpeed and establish baseline Grade that you expect to be the minimum
Same story as per YSPow, PageSpeed is just another nice tool in your web developer toolbox.
If you have more time to spend on performance then go on…
The following tips are about minimizing the data over the wire…
If you do it manually, make sure to keep the original version for later changes…
MyStyle.original.css (This is the original that you use for future changes)
#7 Do you bundle your single data files (CSS, JS, …) into 1 download?
#8 Do you use Image Sprites to improve performance?
Using Image Sprites can dramatically improve performance on sites with a lot of small images.
There are a lot of tools to help compile your images into sprites, see here http://stackoverflow.com/questions/527336/tools-to-make-css-sprites and here http://www.spritecow.com/
Do you know more??
Drop me an email if you have to share more tips!
The next and last post will look at basic tips for User Experience (UX) and User Interface (UI)