What hijacks your load time
1. Too Many HTTP Requests
This is the single biggest contributor to performance problems in most web pages.
Concatenate scripts and stylesheets
Combine images with sprites (put common images into a single large image file, then use CSS to position and selectively display the appropriate portion of the sprite image)
Use fewer images, more CSS.
2. Minimal Client-side Processing
Validation on client. (eg. form input)
Use web standards and MVC separation, making a maintainable, accessible, future-proof and max-performance website.
Leverage Ajax techniques (only requiring small parts of the page to change in response to user actions)
3. Low Number of Parallel Requests
Fetch a script, parse and execute it, then fetch another one… this will use up all the available connections. There are things you can do to your HTML to allow virtually any browser to make many requests at once, which has a huge impact on latency.
Use browser-appropriate domain sharding
Use intelligent script loading
Leverage Keep-Alive (reuse the same TCP connection for multiple HTTP request/response cycles)
4. Failure to leverage browser cache / local storage
Leverage local storage
5. Third-party widgets
- Avoid third-party widgets!
- Try to use widgets that provide asynchronous implementations, so their inevitably terrible performance impacts their widget without dragging down your entire UX with it.
7. Failure to Use a Global Network