kcdc - top free asp.net performance tools

16
Top free tools for tackling ASP.NET Performance Ben Emmett – KCDC – 16 May 2014

Upload: benemmett

Post on 08-May-2015

225 views

Category:

Technology


3 download

TRANSCRIPT

Page 1: KCDC - top free ASP.NET performance tools

Top free tools for tacklingASP.NET Performance

Ben Emmett – KCDC – 16 May 2014

Page 2: KCDC - top free ASP.NET performance tools

Titanium Sponsors

Platinum Sponsors

Gold Sponsors

Page 3: KCDC - top free ASP.NET performance tools

A simple page

DNS

Init

Client wait

Server processing

ReceiveLayout / render

Req html

Go Finished!

<html> <head> <title>A web page</title>

</head> <body> <p id=“greeting”> Hello Kansas! </p> </body></html>

index.html

Page 4: KCDC - top free ASP.NET performance tools

A stylish page

DNS

Init

Client wait

Server processing

ReceiveLayout / render

Req html

Go Finished!

Req css

body { background-color : #123456;}

p { font-weight : bold;}

stylish.css<html> <head> <title>A web page</title>

<link href=“/stylish.css” type=“text/css” /> </head> <body> <p id=“greeting”> Hello Kansas! </p> </body></html>

index.html

Page 5: KCDC - top free ASP.NET performance tools

A responsive page

DNS

Init

Client wait

Server processing

<html> <head> <title>A web page</title> <script src=“/responsive.js” type=“text/javascript”></script> <link href=“/stylish.css” type=“text/css” /> </head> <body> <p id=“greeting”> Hello Kansas! </p> </body></html>

ReceiveLayout / render

Req html

Go Finished!

body { background-color : #123456;}

p { font-weight : bold;}

index.html stylish.css

Req js

responsive.jsalertMessage = function(){ alert("Hello!");}

document.getElementById("greeting").onClick = alertMessage;

Req css

Page 6: KCDC - top free ASP.NET performance tools

It’s slower than thatClient Server

SYN

SYN-ACK

ACK

Request

Response

pt1ACK

Response

pt2

ACK

Response

pt3

Page 7: KCDC - top free ASP.NET performance tools

Retrieve a 35kb fileRound trip # Purpose Data received Running total

1 TCP handshake -- 0kb

2 Receive 1st chunk 2kb 2kb

3 Receive 2nd chunk 4kb 6kb

4 Receive 3rd chunk 8kb 14kb

5 Receive 4th chunk 16kb 30kb

6 Receive 5th chunk 5kb 35kb

Page 8: KCDC - top free ASP.NET performance tools

Where are the bottlenecks?

• Latency

• Bandwidth

• Server processing

• Rendering

And when do they matter?

Page 9: KCDC - top free ASP.NET performance tools

#1

www.getglimpse.com

Disclaimer

Page 10: KCDC - top free ASP.NET performance tools

#2

http://www.brentozar.com/blitzindex/

sp_BlitzIndex

Page 11: KCDC - top free ASP.NET performance tools

#3

www.webpagetest.org

Page 12: KCDC - top free ASP.NET performance tools

#4

chrome

canary

www.google.co.uk/intl/en/chrome/browser/canary.html

Page 14: KCDC - top free ASP.NET performance tools

Some bonus super-easy wins

Use a CDN:Provided by GoogleProvided by Microsoft

Optimize images:Image Optimizer Visual Studio extension

Minimize & combine:Web Essentials Visual Studio extension

Page 15: KCDC - top free ASP.NET performance tools

Wrapping up

• Make sure you’re getting the easy wins

• Always have half an eye on performance

• No premature optimization!

Page 16: KCDC - top free ASP.NET performance tools

[email protected]

@bcemmett

slideshare.net/benemmett