Speed = $$$

  • 1,056 views
Uploaded on

Why is Performance important? …

Why is Performance important?
Applications in general
Web applicaitons
What can we as devs do?
Tips: How to optimize
Web applications, Silverlight, Backend, …
Regression
How to maintain performance over time
How to get faster over time
Discussion: What tips do you have in your toolbox?

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,056
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
0
Comments
0
Likes
3

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • Wieso ist Performance wichtig?Applikation generellWeb applikationenWas können wir tun?Tips: HowtooptimizeWeb applicationsSilverlightBackend…RegressionHowtomaintainperformanceover timeHowtogetfasterover timeDiscussion: Whattips do youhave in yourtoolbox?Fill IKM wiki
  • Click toaddnotesPeter Gfader talksabout web performance
  • Click toaddnotesPeter Gfader talksabout web performance
  • Click toaddnotesPeter Gfader talksabout web performance
  • Click toaddnotesPeter Gfader talksabout web performance
  • Click toaddnotesPeter Gfader talksabout web performance
  • Click toaddnotesPeter Gfader talksabout web performance
  • Performance = Zeitverhalten von SoftwareSpeed = Ausführungsgeschwindigkeit
  • Click toaddnotesPeter Gfader talksabout web performance
  • Show in Firebug  google.com
  • Show in FireBug
  • Show in FireBug
  • Show in FireBug
  • d:\\DataPeterGfader\\ToolBox\\PerfMon\\perfmon-counters-peterG.msc
  • d:\\DataPeterGfader\\ToolBox\\PerfMon\\perfmon-counters-peterG.msc
  • Show zuehlke.comShow google.com
  • Show zuehlke.comShow google.com
  • Show CopyCatlocalhost VS online
  • YouTube
  • POKwebseiteSelect N+1 problem sollte eigentlich SELECT 1+N heissenProdukte
  • We are continuously working on that project. We implement new features, we fix bugs we improve certain bits, or at least we think we improve them  
  • reports

Transcript

  • 1. Speed = $$$ Peter Gfader
  • 2. AbstractWhy is Performance important? Applications in general WebapplicaitonsWhat can we devs do?Tips: How to optimize Web applications Silverlight Backend …Regression How to maintain performance over time How to get faster over timeDiscussion: What tips do you have in your toolbox? Fill wiki
  • 3. Speed matters?
  • 4. #1 Trust
  • 5. #2 Money
  • 6. “For Amazon every 100 ms increase in load times decreased sales with 1%”http://glinden.blogspot.com/2006/11/marissa-mayer-at-web-20.html
  • 7. Google “400 ms delay caused a 0.59% decrease in search requests per user”http://velocityconf.com/velocity2009/public/schedule/detail/8523
  • 8. Speed matters! Lucky day
  • 9. The web
  • 10. HTML• HyperText Markup Language• Describes a web page <html> <head> <title>Hello HTML</title> </head> <body> <p>Hello World!</p> </body> </html>
  • 11. HTTP• Hypertext Transfer Protocol• Request – Response GET /index.html HTTP/1.1 Host: www.example.com HTTP/1.1 200 OK Date: Mon, 23 May 2005 22:38:34 GMT Server: Apache/1.3.3.7 (Unix) (Red-Hat/Linux) Last-Modified: Wed, 08 Jan 2003 23:11:55 GMT Content-Length: 438 Content-Type: text/html; charset=UTF-8
  • 12. How a web page is shown Your Hosting Computer Computer The Internet Internet Client Server
  • 13. Request / Response Request www.zuehlke.com The Internet ResponseClient HTML Serve r
  • 14. XMLHttpRequest AJAX The InternetClient Serve r
  • 15. Silverlight / Flash The Internet ServeClient r
  • 16. “Building a webapp is easy! You just gotta know HTML, CSS, JavaScript, C#, Razor, SQL, DDL, and Regex Oh, plus people skills”https://twitter.com/#!/secretGeek/status/83297694449287168
  • 17. Can we be too fast?
  • 18. Video playerTechnical
  • 19. Perceived SpeedMean RT is about 160 ms: auditory stimulusMean RT is about 190 ms: visual stimulushttp://en.wikipedia.org/wiki/Reaction_time
  • 20. What can we do?http://www.flickr.com/photos/rockersdelight/6161622855/
  • 21. You cant improve what you don’t measure
  • 22. Measure
  • 23. Perfmon
  • 24. Perfmon Counters
  • 25. Perfmon Customization
  • 26. PageSpeed
  • 27. YSlow
  • 28. LoadStorm
  • 29. TipMeasure from day 1
  • 30. Measure and establish a baseline
  • 31. Improve
  • 32. 1/7 Minify / Uglify
  • 33. 2/7 Compress
  • 34. 3/7 Bundle / Combine
  • 35. 4/7 Image Sprites
  • 36. 5/7 Server side
  • 37. Server side
  • 38. 6/7 Server side Caching
  • 39. 7/7 CDN
  • 40. Silverlight?
  • 41. Measure again
  • 42. Developers like to change things
  • 43. Developers need to change things
  • 44. Before and After
  • 45. Tools
  • 46. Tools• Firebug http://getfirebug.com/• Yslow http://yslow.org/• Pagespeed https://developers.google.com/speed/pagespeed/• Google Analytics http://www.google.com/analytics/• Fiddler http://www.fiddler2.com/• Wireshark http://www.wireshark.org/• CPorts http://www.nirsoft.net/utils/cports.html• Firebug for SL http://firstfloorsoftware.com/silverlightspy
  • 47. Tools• Jetbrains dotTrace http://www.jetbrains.com/profiler/index.html• ANTS profiler http://www.red- gate.com/products/ants_performance_profiler/index.htm
  • 48. Perfmon Counters• General Windows Server http://adminfoo.net/2007/04/windows-perfmon-top-ten-counters.html http://technet.microsoft.com/en-us/library/cc768048.aspx• SQL Server http://www.databasejournal.com/features/mssql/article.php/3932406/Top-10-SQL- Server-Counters-for-Monitoring-SQL-Server-Performance.htm
  • 49. Tools• Web Standards Update for VS2010 http://visualstudiogallery.msdn.microsoft.com/a15c3ce9-f58f-42b7-8668-53f6cdc2cd83• Cassette http://getcassette.net/• Sprite and Image Optimization http://aspnet.codeplex.com/releases/view/65787• Image Optimizer http://visualstudiogallery.msdn.microsoft.com/a56eddd3-d79b-48ac-8c8f-2db06ade77c3• CSSCop http://visualstudiogallery.msdn.microsoft.com/a921b98e-9430-4be2-bf53-1169e12bdb50
  • 50. References• 8 Performance tips before going live http://blog.gfader.com/2011/07/website-check-list-part-2-aspnet- 8.html• Performance interview with LoadStorm + more Tools http://blog.gfader.com/2010/06/performance-interview-with- loadstorm.html
  • 51. References• DNR podcast on YSlow http://www.dotnetrocks.com/default.aspx?showNum=390• Founder of YSlow (Yahoo) http://www.stevesouders.com/blog/
  • 52. Q?
  • 53. Yours?
  • 54. Fill IKM?
  • 55. Peter Gfaderblog.gfader.comThanks! Exhausted but happy!