SlideShare a Scribd company logo
Website Performance OptimizationMariusz Kaczmarek
“If it is fast and ugly,					 they will use it and curse you;			 if it is slow, they will not use it.”David CheritonSource: http://blogs.msdn.com/b/edglas/archive/2009/01/02/make-your-performance-work-count-the-20-rule.aspxhttps://secure.wikimedia.org/wikipedia/en/wiki/David_Cheriton2
Categorization3
Optimize performance?				 	     More sales 				 	     Less bandwidth & server peaks 				 	     Customer satisfaction 				 	     Might influence rankings Competitive advantageSource: http://googlewebmastercentral.blogspot.com/2010/04/using-site-speed-in-web-search-ranking.html4
“…optimize front-end performance first,	 that's where 80% or more of the		 end-user response time is spent”	Prof. Steve SoudersSource: http://developer.yahoo.com/blogs/ydn/posts/2007/03/high_performanc/http://www.flickr.com/photos/seanosh/2782339349/5
Effective measures?		Website performance optimization should be aligned with the 		service / website / target audience you work with.		Focus areas could be: Image optimization & compression JS performance (asynchronous, cached) Reduction of DOM elements		 Teaching customers and employees!6
Combined Scripts  Server-sided combination						  Avoid @import for combining						  JS tool: HEADjshttp://headjs.com/7
CSS Performance						 Reuse of round corners and 						      shadow classes							 font-faces instead of pictures						 CSS-Sprites						Universal > tags > classes > IDsSource: http://www.alsacreations.com/xmedia/doc/full/sprites-big-sites.pnghttps://developer.mozilla.org/en/Writing_Efficient_CSS8
Postponed Loading					Use of GET with AJAX					Google Instant takessnapshots 5-10s      				     after onLoadevent? http://b0i.de/seomofoTools: ContolJShttp://stevesouders.com/controljs/ImageLoaderhttp://developer.yahoo.com/yui/imageloader/LazyLoadhttp://plugins.jquery.com/project/lazyload/Source: http://developer.yahoo.com/performance/rules.html9
Event handlers, components,XHRsUser interaction, XHRsbackendcomponentsrequestSite loadedHTML sentrequestonload5-10sGoogle Instant SnapshotModifiedimage from High Performance Web Pages | Stoyan Stefanov | Yahoo! Exceptional Performance | PHP Quebec, March 13, 2008Source: http://b0i.de/seomofo10
DNS Lookups & Redirections				          Avoid 301 redirections (e.g. in HTML)					http://www.bonoseo.com/  !=  http://www.bonoseo.com				          usage of not morethan2-5 differentdomains on average				          better: domain-aliases for parallel 					downloadshttp://images.bonoseo.com || http://www.bonoseo.com				          cookielessdomainsforstaticcontentSource: http://yuiblog.com/blog/2007/04/11/performance-research-part-4/11
Content Delivery NetworkGeographical distribution						Minimizes DNS-Lookups							Optimized caching und uptime					     (by dynamic DNS resolving)Source: http://www.flickr.com/photos/andybeatty/5247263940/12
Image Compression						UseSmush.it						Progressive JPEGbaseline						progressiveSource: http://www.yuiblog.com/blog/2008/12/05/imageopt-4/13
Vector Graphics Canvas Elemente with HTML5Ai->Canvashttp://visitmix.com/labs/ai2canvas/Progressive JPEG 13,3 kB -> HTML5 2,38 kBSaved:  82%14
Shape the DOM Tree		<h1><em>Heading</em></h1> - useCSS‘sitalicsinstead		 Tool: DOM-Monsterhttp://mir.aculo.us/dom-monster/		 Avoid iFrames15
Chunking flushfunctionSource: http://www.phpied.com/progressive-rendering-via-multiple-flushes/http://stevesouders.com/docs/velocity-20090622.ppt16
Performance Test ToolsLoads.inwww.loads.inSlow Copwww.slowcop.comShow Slowwww.showslow.comWebpagetest www.webpagetest.org						Browser basedSpeedtracerhttp://b0i.de/speedtracerYslowFireBughttp://b0i.de/yslowMore tools: http://code.google.com/speed/tools.html17
Competition Analysis		Possible performance profiles (by Souders & students)http://b0i.de/profile		Simple linear regression analysisWolfram Alpha: linear fit {1, 87},{2, 77},{3, 95},{4, 68}http://b0i.de/wolfreg18
Pareto Rule 80/20Optimizationneeds time!Lessons learned: Concentrate on biggestchunksSource: JavaScript: The Good Parts - Part Six: Ajax Performance | Douglas Crockford19
Questions? Discuss!Let’s be friends Twitter: BONOSEOFacebook: kaczmarek.mariuszSsssshh… SouderSlides from Stanford: http://b0i.de/souderslides20
Statistics 2010Additional			Average website size: 320 kB			Compression is possible for 2/3 of overall data			80% of content is loaded from one hostSource: Statisticnumbers from 4.2 billionsiteshttp://code.google.com/speed/articles/web-metrics.html21
Inline Images						Base 64 encoding						Great forsmallstaticimagesAdditionalWorks until IE7 Browser switch!22Source: http://9gag.com/gag/76585
JavaScript PerformanceAdditional						Tools: http://dean.edwards.name/packer/http://developer.yahoo.com/yui/compressor/						DRY and OO approachSeconds per 10 million operationsSource: Besser PHP Programmieren – Professionelle PHP-Techniken | Carsten Möhrke23

More Related Content

PDF
Optimizing web performance (Fronteers edition)
PPTX
Website performance optimization
PDF
Measuring Web Performance
PDF
Client-side Web Performance Optimization [paper]
PPTX
WordPress vs Other Content Management System
PPTX
How to Speed up your Website
PDF
Wordpress horsepower
PDF
Speed Up Wordpress, Wordpress Horsepower
Optimizing web performance (Fronteers edition)
Website performance optimization
Measuring Web Performance
Client-side Web Performance Optimization [paper]
WordPress vs Other Content Management System
How to Speed up your Website
Wordpress horsepower
Speed Up Wordpress, Wordpress Horsepower

What's hot (20)

PPTX
Information on Various HTTP Error Codes
PPT
How We Localize & Mobilize WP Sites - Pubcon 2013
PPTX
How Can You Make Your Website Faster?
PPTX
Performace optimization (increase website speed)
PDF
PPT
Web Application Development Fundamentals
PDF
Poslovni Imenik BiH - Lokal d.o.o.
PDF
Need for Speed: Website Edition – Website Optimization Tools and Techniques P...
PDF
Website speed optimization guide for technically advanced webmasters
PDF
WordCamp RVA 2011 - Performance & Tuning
PDF
High Performance - Joomla!Days NL 2009 #jd09nl
PDF
Is your website's speed letting you down?
PPTX
Presentation1
PPTX
Html Optimization for SEO
PDF
WPblog's Ultimate WordPress Guide to Boost Your Website Performance
PPT
Frontend performance
PPTX
Breaking the Speed Limit: Faster Websites Win
PPTX
High Performance Web/Mobile Pages - Automation
PPT
Website speed optimization techniques
PDF
Optimizing the performance of WordPress
Information on Various HTTP Error Codes
How We Localize & Mobilize WP Sites - Pubcon 2013
How Can You Make Your Website Faster?
Performace optimization (increase website speed)
Web Application Development Fundamentals
Poslovni Imenik BiH - Lokal d.o.o.
Need for Speed: Website Edition – Website Optimization Tools and Techniques P...
Website speed optimization guide for technically advanced webmasters
WordCamp RVA 2011 - Performance & Tuning
High Performance - Joomla!Days NL 2009 #jd09nl
Is your website's speed letting you down?
Presentation1
Html Optimization for SEO
WPblog's Ultimate WordPress Guide to Boost Your Website Performance
Frontend performance
Breaking the Speed Limit: Faster Websites Win
High Performance Web/Mobile Pages - Automation
Website speed optimization techniques
Optimizing the performance of WordPress
Ad

Viewers also liked (20)

PDF
Web performance at WDCNZ
PDF
Performance Evaluation of XMPP on the Web
DOC
Applebees server performance appraisal
PDF
Understanding and measuring web performance
DOC
Website Pre SEO Analysis Report- Online Marketing: Search Engine Optimization
PDF
Recruitment Analytics workshop - Endouble Antwerp 6-3-2017
PDF
SEO sample report
PDF
Website Structure Analysis Report Sample - SEO Traffic
PPTX
HTTP Application Performance Analysis
PDF
Endouble Advertising Workshop
PPTX
Threats To The System
PPTX
APRICOT 2017: Trafficshifting: Avoiding Disasters & Improving Performance at ...
PDF
Approaches to Software Testing
PDF
Performance Analysis: new tools and concepts from the cloud
PDF
Measuring the Performance of Single Page Applications
PDF
Application Performance Management - Solving the Performance Puzzle
PPT
Web Server Hardware and Software
PPTX
An Introduction to Software Performance Engineering
PDF
PPC AdWords Report
PDF
Best Practices And Next Gen Formats: Supercharging Web Content Performance
Web performance at WDCNZ
Performance Evaluation of XMPP on the Web
Applebees server performance appraisal
Understanding and measuring web performance
Website Pre SEO Analysis Report- Online Marketing: Search Engine Optimization
Recruitment Analytics workshop - Endouble Antwerp 6-3-2017
SEO sample report
Website Structure Analysis Report Sample - SEO Traffic
HTTP Application Performance Analysis
Endouble Advertising Workshop
Threats To The System
APRICOT 2017: Trafficshifting: Avoiding Disasters & Improving Performance at ...
Approaches to Software Testing
Performance Analysis: new tools and concepts from the cloud
Measuring the Performance of Single Page Applications
Application Performance Management - Solving the Performance Puzzle
Web Server Hardware and Software
An Introduction to Software Performance Engineering
PPC AdWords Report
Best Practices And Next Gen Formats: Supercharging Web Content Performance
Ad

Similar to Web performance optimization (WPO) (20)

PPTX
SearchLove San Diego 2018 | Mat Clayton | Site Speed for Digital Marketers
PPT
Csdn Drdobbs Tenni Theurer Yahoo
PPTX
Hardcode SEO
PDF
Web Performance Optimierung - DWX13
PPTX
Design+Performance
PPT
Heavy Web Optimization: Frontend
PPT
腾讯大讲堂09 如何建设高性能网站
PPT
腾讯大讲堂09 如何建设高性能网站
PPTX
5 steps to faster web sites & HTML5 games - updated for DDDscot
PPTX
5 Steps to Faster Web Sites and HTML5 Games
PPTX
SEO 101 - Google Page Speed Insights Explained
PDF
Core Web Vitals SEO Workshop - improve your performance [pdf]
PPTX
High Performance Websites
PPTX
Modelling Web Performance Optimization - FFSUx
PPT
Plop
PPT
High Performance Websites By Souders Steve
PPT
High Performance Web Sites
PPT
腾讯大讲堂09 如何建设高性能网站
PDF
Front-end optimisation & jQuery Internals (Pycon)
PPT
Make Drupal Run Fast - increase page load speed
SearchLove San Diego 2018 | Mat Clayton | Site Speed for Digital Marketers
Csdn Drdobbs Tenni Theurer Yahoo
Hardcode SEO
Web Performance Optimierung - DWX13
Design+Performance
Heavy Web Optimization: Frontend
腾讯大讲堂09 如何建设高性能网站
腾讯大讲堂09 如何建设高性能网站
5 steps to faster web sites & HTML5 games - updated for DDDscot
5 Steps to Faster Web Sites and HTML5 Games
SEO 101 - Google Page Speed Insights Explained
Core Web Vitals SEO Workshop - improve your performance [pdf]
High Performance Websites
Modelling Web Performance Optimization - FFSUx
Plop
High Performance Websites By Souders Steve
High Performance Web Sites
腾讯大讲堂09 如何建设高性能网站
Front-end optimisation & jQuery Internals (Pycon)
Make Drupal Run Fast - increase page load speed

Recently uploaded (20)

PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
Cloud computing and distributed systems.
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPT
Teaching material agriculture food technology
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Approach and Philosophy of On baking technology
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Spectral efficient network and resource selection model in 5G networks
Review of recent advances in non-invasive hemoglobin estimation
Cloud computing and distributed systems.
Chapter 3 Spatial Domain Image Processing.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
MYSQL Presentation for SQL database connectivity
Reach Out and Touch Someone: Haptics and Empathic Computing
Teaching material agriculture food technology
NewMind AI Weekly Chronicles - August'25 Week I
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Building Integrated photovoltaic BIPV_UPV.pdf
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
20250228 LYD VKU AI Blended-Learning.pptx
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Mobile App Security Testing_ A Comprehensive Guide.pdf
Approach and Philosophy of On baking technology
The AUB Centre for AI in Media Proposal.docx
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Spectral efficient network and resource selection model in 5G networks

Web performance optimization (WPO)

  • 2. “If it is fast and ugly, they will use it and curse you; if it is slow, they will not use it.”David CheritonSource: http://blogs.msdn.com/b/edglas/archive/2009/01/02/make-your-performance-work-count-the-20-rule.aspxhttps://secure.wikimedia.org/wikipedia/en/wiki/David_Cheriton2
  • 4. Optimize performance? More sales  Less bandwidth & server peaks  Customer satisfaction  Might influence rankings Competitive advantageSource: http://googlewebmastercentral.blogspot.com/2010/04/using-site-speed-in-web-search-ranking.html4
  • 5. “…optimize front-end performance first, that's where 80% or more of the end-user response time is spent” Prof. Steve SoudersSource: http://developer.yahoo.com/blogs/ydn/posts/2007/03/high_performanc/http://www.flickr.com/photos/seanosh/2782339349/5
  • 6. Effective measures? Website performance optimization should be aligned with the service / website / target audience you work with. Focus areas could be: Image optimization & compression JS performance (asynchronous, cached) Reduction of DOM elements  Teaching customers and employees!6
  • 7. Combined Scripts  Server-sided combination  Avoid @import for combining  JS tool: HEADjshttp://headjs.com/7
  • 8. CSS Performance  Reuse of round corners and shadow classes  font-faces instead of pictures  CSS-Sprites Universal > tags > classes > IDsSource: http://www.alsacreations.com/xmedia/doc/full/sprites-big-sites.pnghttps://developer.mozilla.org/en/Writing_Efficient_CSS8
  • 9. Postponed Loading Use of GET with AJAX Google Instant takessnapshots 5-10s after onLoadevent? http://b0i.de/seomofoTools: ContolJShttp://stevesouders.com/controljs/ImageLoaderhttp://developer.yahoo.com/yui/imageloader/LazyLoadhttp://plugins.jquery.com/project/lazyload/Source: http://developer.yahoo.com/performance/rules.html9
  • 10. Event handlers, components,XHRsUser interaction, XHRsbackendcomponentsrequestSite loadedHTML sentrequestonload5-10sGoogle Instant SnapshotModifiedimage from High Performance Web Pages | Stoyan Stefanov | Yahoo! Exceptional Performance | PHP Quebec, March 13, 2008Source: http://b0i.de/seomofo10
  • 11. DNS Lookups & Redirections Avoid 301 redirections (e.g. in HTML) http://www.bonoseo.com/ != http://www.bonoseo.com usage of not morethan2-5 differentdomains on average better: domain-aliases for parallel downloadshttp://images.bonoseo.com || http://www.bonoseo.com cookielessdomainsforstaticcontentSource: http://yuiblog.com/blog/2007/04/11/performance-research-part-4/11
  • 12. Content Delivery NetworkGeographical distribution Minimizes DNS-Lookups Optimized caching und uptime (by dynamic DNS resolving)Source: http://www.flickr.com/photos/andybeatty/5247263940/12
  • 13. Image Compression UseSmush.it Progressive JPEGbaseline progressiveSource: http://www.yuiblog.com/blog/2008/12/05/imageopt-4/13
  • 14. Vector Graphics Canvas Elemente with HTML5Ai->Canvashttp://visitmix.com/labs/ai2canvas/Progressive JPEG 13,3 kB -> HTML5 2,38 kBSaved: 82%14
  • 15. Shape the DOM Tree <h1><em>Heading</em></h1> - useCSS‘sitalicsinstead  Tool: DOM-Monsterhttp://mir.aculo.us/dom-monster/  Avoid iFrames15
  • 17. Performance Test ToolsLoads.inwww.loads.inSlow Copwww.slowcop.comShow Slowwww.showslow.comWebpagetest www.webpagetest.org Browser basedSpeedtracerhttp://b0i.de/speedtracerYslowFireBughttp://b0i.de/yslowMore tools: http://code.google.com/speed/tools.html17
  • 18. Competition Analysis Possible performance profiles (by Souders & students)http://b0i.de/profile Simple linear regression analysisWolfram Alpha: linear fit {1, 87},{2, 77},{3, 95},{4, 68}http://b0i.de/wolfreg18
  • 19. Pareto Rule 80/20Optimizationneeds time!Lessons learned: Concentrate on biggestchunksSource: JavaScript: The Good Parts - Part Six: Ajax Performance | Douglas Crockford19
  • 20. Questions? Discuss!Let’s be friends Twitter: BONOSEOFacebook: kaczmarek.mariuszSsssshh… SouderSlides from Stanford: http://b0i.de/souderslides20
  • 21. Statistics 2010Additional Average website size: 320 kB Compression is possible for 2/3 of overall data 80% of content is loaded from one hostSource: Statisticnumbers from 4.2 billionsiteshttp://code.google.com/speed/articles/web-metrics.html21
  • 22. Inline Images Base 64 encoding Great forsmallstaticimagesAdditionalWorks until IE7 Browser switch!22Source: http://9gag.com/gag/76585
  • 23. JavaScript PerformanceAdditional Tools: http://dean.edwards.name/packer/http://developer.yahoo.com/yui/compressor/ DRY and OO approachSeconds per 10 million operationsSource: Besser PHP Programmieren – Professionelle PHP-Techniken | Carsten Möhrke23