Web Application Optimization Techniques
Lecture Outline What is Web Application Optimization? Why Optimize? Optimization Techniques Application Layer Optimization Techniques Presentation Layer Optimization Techniques Caching – How your browser does it Performance Analyzers Yslow Firebug Web Server Tuning Expires Last-Modified-Since Examples
What is Web Application Optimization? Web Application Optimization is all about tuning your web application components to make your web application fast or appear fast.
Why Optimize? Faster loading times for pages Lesser amount of data to transfer Less load on the server
Optimization Techniques Application Layer Database Optimization Indexing Query optimization Table partitioning De-normalization Query caching Application Server Code Caching Code Refactoring Presentation Layer Cache Control Web Content Minify-ing
Caching – How your browser does it It's all in the headers Every time your browser gets a resource, it attempts to determine whether or not to cache the resource and for how long to do so. Validation on cached resources are carried out from time to time.
Performance Analyzers Yslow - http://developer.yahoo.com/yslow/
Performance Analyzers Firebug - http://www.getfirebug.com/
Web Server Tuning Expires ExpiresActive On ExpiresByType text/html "access plus 1 day" ExpiresByType image/gif "access plus 5 months" ExpiresByType image/jpeg "access plus 5 months" ExpiresByType text/css "access plus 1 week" ExpiresByType application/x-javascript "access plus 1 week" ExpiresByType image/x-icon "access plus 5 months" Last-Modified-Since Normally inserted by the web server by default Deflate/Gzip AddOutputFilterByType DEFLATE text/html text/plain AddOutputFilter DEFLATE js css
Examples The first great gift we can bestow on others is a good example - Morell, Thomas
Conclusion & Questions
Links Pool http://developer.yahoo.com/yslow/ http://www.getfirebug.com/ http://www.mnot.net/cache_docs/ http://developer.yahoo.com/performance/rules.html

Web Application Optimization Techniques

  • 1.
  • 2.
    Lecture Outline Whatis Web Application Optimization? Why Optimize? Optimization Techniques Application Layer Optimization Techniques Presentation Layer Optimization Techniques Caching – How your browser does it Performance Analyzers Yslow Firebug Web Server Tuning Expires Last-Modified-Since Examples
  • 3.
    What is WebApplication Optimization? Web Application Optimization is all about tuning your web application components to make your web application fast or appear fast.
  • 4.
    Why Optimize? Fasterloading times for pages Lesser amount of data to transfer Less load on the server
  • 5.
    Optimization Techniques ApplicationLayer Database Optimization Indexing Query optimization Table partitioning De-normalization Query caching Application Server Code Caching Code Refactoring Presentation Layer Cache Control Web Content Minify-ing
  • 6.
    Caching – Howyour browser does it It's all in the headers Every time your browser gets a resource, it attempts to determine whether or not to cache the resource and for how long to do so. Validation on cached resources are carried out from time to time.
  • 7.
    Performance Analyzers Yslow- http://developer.yahoo.com/yslow/
  • 8.
    Performance Analyzers Firebug- http://www.getfirebug.com/
  • 9.
    Web Server TuningExpires ExpiresActive On ExpiresByType text/html "access plus 1 day" ExpiresByType image/gif "access plus 5 months" ExpiresByType image/jpeg "access plus 5 months" ExpiresByType text/css "access plus 1 week" ExpiresByType application/x-javascript "access plus 1 week" ExpiresByType image/x-icon "access plus 5 months" Last-Modified-Since Normally inserted by the web server by default Deflate/Gzip AddOutputFilterByType DEFLATE text/html text/plain AddOutputFilter DEFLATE js css
  • 10.
    Examples The firstgreat gift we can bestow on others is a good example - Morell, Thomas
  • 11.
  • 12.
    Links Pool http://developer.yahoo.com/yslow/http://www.getfirebug.com/ http://www.mnot.net/cache_docs/ http://developer.yahoo.com/performance/rules.html