The basics of web performance optimization from server-side to client-side
1. The basics of web performance
By Prasoon Agrawal
prasoongkp@gmail.com
2. My areas of interest
Performance Engineering
Cloud Computing and Architecture
User Activity & Behavioral Analysis
Mobile Applications
Web Applications
3. Y Performance Is important
Better User Experience
Better User Engagement
Better Conversion
4. Types of Optimization
Server Side Processing Optimization
Page Load Optimization
Post Page Load Optimization
Make Your Browsing Experience faster
5. Server Side processing Optimization
In-memory Data Objects Caching
HTTP Runtime Caching
HTTP Server Configuration Tweaking
Reducing Server Side Processing
Reducing First Byte Time
6. Page Load Optimization
Make Fewer HTTP Requests
Use a Content Delivery Network
Use browser caching by headers(Expires, Cache-Control & Last-Modified)
Enable Proxy caching by header(Cache control:public )
Minify CSS, HTML & JavaScript
Enable Gzip for HTML, CSS & JavaScript above 150bytes
Defer Loading of JavaScript which are not used in the beginning of page load
Serve static content from a Cookie free Domain
Keep Cookies and Request headers as small as possible ensure that HTTP
request can fit into a single packet(i.e. 1500 bytes)
Minimize DNS lookups (reduce the no of hostnames) Use URL paths instead
of hostnames wherever possible
Use Minimum or No Redirection
Avoid Bad Request (404 / 410) errors
Combine Images Using CSS sprites
Balance parallelizable resources across hostnames (upto 5-6 domains)
7. Post Page Load Optimization
Reduce the DOM Size
Use least no of plugins
Render Dynamic content on the fly when needed
Do not attach too many events to the on load
Do least possible calculations on client side
Make CSS rules as specific as possible using Class & ID selector
Allow elements to inherit from parent elements
Remove extra qualifiers(tag or class over Id & tag over class)
Avoid CSS expressions(only for IE < 7)
Put CSS in the document head(use <link> in <head>)
Specify Image dimensions to avoid reflows and re-render page
Specify dimensions that match those of the images themselves
Specify a correct character encoding and content type in header
8. Make Your Browsing Experience faster
Using Public DNS
Reduces the no of DNS lookup and Latency
Lesser Redirects and Load balanced cached results
Save from Denial-of-Service(DoS) attack
Save from Spoofing DNS servers
GoogleDns (8.8.8.8 / 8.8.4.4)
DnsAdvantage(156.154.70.1 / 156.154.71.1)
OpenDns(208.67.222.222 / 208.67.220.220)
NortonDns(198.153.192.1 / 198.153.194.1)
9. Thank You
Questions ?
Sources: http://developer.yahoo.com
https://developers.google.com