SlideShare una empresa de Scribd logo
1 de 113
Descargar para leer sin conexión
Measuring	
  CDN	
  Performance	
  
Hooman	
  Beheshti,	
  VP	
  Technology	
  
Why	
  this	
  matters	
  
•  Performance	
  is	
  one	
  of	
  the	
  main	
  reasons	
  we	
  use	
  a	
  
CDN	
  
•  Seems	
  easy	
  to	
  measure,	
  but	
  isn’t	
  
•  Performance	
  is	
  an	
  easy	
  way	
  to	
  comparison	
  shop	
  
•  Nuanced	
  
•  Metric	
  overload	
  
Common	
  mistakes	
  
•  Getting	
  lost	
  in	
  data	
  
•  Focusing	
  on	
  one	
  thing	
  and	
  one	
  thing	
  alone	
  
– We	
  like	
  numbers!	
  
•  Forgetting	
  about	
  our	
  applications	
  
•  Letting	
  vendors	
  influence	
  us	
  	
  
– (I’m	
  fully	
  aware	
  of	
  the	
  irony!)	
  
Goals	
  
•  Share	
  measurement	
  experiences	
  
•  What	
  does	
  the	
  measurement	
  landscape	
  look	
  like	
  
•  Help	
  guide	
  towards	
  good	
  testing	
  plan	
  
–  Avoid	
  pitfalls	
  
Background	
  
CDNs:	
  delivery	
  platforms	
  
•  We	
  won’t	
  talk	
  about	
  
– Extra	
  stuff:	
  security,	
  GSLB,	
  TLS	
  offload,	
  etc	
  
– We	
  also	
  won’t	
  talk	
  about	
  page-­‐level	
  optimizations	
  
•  We	
  will	
  focus	
  on	
  the	
  delivery	
  side	
  
– Delivering	
  HTTP	
  objects	
  
Delivery:	
  static/cached	
  objects	
  
Client	
  
CDN	
  Node	
  
Origin	
  
Delivery:	
  dynamic/uncached	
  objects	
  
What	
  we’ll	
  be	
  focusing	
  on	
  
•  How	
  we	
  measure	
  
•  Metrics	
  to	
  measure	
  
•  What	
  to	
  measure	
  
•  Some	
  gotchas,	
  misconceptions,	
  and	
  common	
  
mistakes	
  
Measurement	
  Techniques	
  
(how	
  we	
  measure)	
  
Measurement	
  techniques	
  
•  Pretend	
  Users	
  
–  Synthetic	
  tests	
  
–  Not	
  actual	
  users	
  
•  Real	
  Users	
  
–  In	
  the	
  browser	
  
–  Actual	
  users	
  
Synthetic	
  testing	
  
Synthetic	
  testing	
  
•  Usually	
  a	
  large	
  network	
  of	
  test	
  nodes	
  all	
  over	
  
the	
  globe	
  
•  Highly	
  scalable,	
  can	
  do	
  lots	
  of	
  tests	
  at	
  once	
  
•  Many	
  vendors	
  that	
  have	
  this	
  model	
  
– Examples:	
  Catchpoint,	
  Dynatrace(Gomez),	
  
Keynote,	
  Pingdom,	
  etc	
  
Synthetic	
  testing	
  
•  Built	
  to	
  do	
  full	
  performance	
  and	
  availability	
  testing	
  
–  Lots	
  of	
  “monitors”	
  –	
  emulating	
  what	
  real	
  users	
  do	
  
–  DNS,	
  Traceroute,	
  Ping,	
  Streaming,	
  Mobile	
  
–  HTTP	
  
•  Object	
  
•  Browser	
  
•  Transactions/Flows	
  
	
  
•  Tests	
  set	
  up	
  with	
  some	
  frequency	
  to	
  repeatedly	
  test	
  things	
  
–  Aggregates	
  reported	
  
Backbone	
  nodes	
  
•  Test	
  machines	
  sitting	
  in	
  datacenters	
  all	
  around	
  the	
  globe	
  
•  Terrible	
  indicators	
  of	
  raw	
  performance	
  
–  No	
  latency	
  
–  Infinite	
  bandwidth	
  
•  But	
  really	
  good	
  at:	
  
–  Availability	
  
–  Scale	
  
–  Backend	
  problems	
  
–  Global	
  reach	
  
https://www.flickr.com/photos/stars6/4381851322/	
  
Backbone	
  nodes	
  
•  Test	
  machines	
  sitting	
  in	
  datacenters	
  all	
  around	
  the	
  globe	
  
•  Terrible	
  indicators	
  of	
  raw	
  performance	
  
–  No	
  latency	
  
–  Infinite	
  bandwidth	
  
•  But	
  really	
  good	
  at:	
  
–  Availability	
  
–  Scale	
  
–  Backend	
  problems	
  
–  Global	
  reach	
  
Last	
  mile	
  nodes	
  
•  Test	
  machines	
  sitting	
  behind	
  a	
  real	
  home-­‐like	
  
internet	
  connection	
  
•  Much	
  better	
  at	
  reporting	
  what	
  you	
  can	
  expect	
  
from	
  users,	
  but	
  sometimes	
  unreliable	
  
•  Also	
  not	
  as	
  dense	
  in	
  deployment	
  
backbone	
   last	
  mile	
  
Synthetic	
  testing	
  
•  Pros	
  
–  Geographic	
  distribution	
  
–  Lots	
  of	
  options	
  for	
  testing	
  
–  Really	
  good	
  for	
  on-­‐the-­‐spot	
  troubleshooting	
  
–  Last-­‐mile	
  nodes	
  can	
  be	
  pretty	
  good	
  proxies	
  for	
  
performance	
  
•  Cons	
  
–  Not	
  real	
  users!	
  
–  Backbone	
  nodes	
  can	
  be	
  misleading	
  
Real	
  users	
  (RUM)	
  
RUM	
  
•  Use	
  javascript	
  to	
  collect	
  timing	
  metrics	
  
•  Can	
  collect	
  lots	
  of	
  things	
  through	
  browser	
  
APIs	
  
– Page	
  metrics,	
  asset	
  metrics,	
  user-­‐defined	
  metrics	
  
Use	
  test	
  assets	
  
•  Use	
  this	
  model	
  to	
  initiate	
  tests	
  in	
  the	
  browser	
  
•  Some	
  vendors:	
  
– Cedexis,	
  TurboBytes,	
  CloudHarmony,	
  more…	
  
– Usually,	
  this	
  isn’t	
  their	
  business,	
  but	
  the	
  data	
  
drives	
  their	
  main	
  business	
  objectives	
  
•  You	
  can	
  build	
  this	
  yourself	
  too	
  
Use	
  real	
  assets	
  in	
  the	
  page	
  
•  Collect	
  timings	
  from	
  actual	
  objects	
  
–  Resource	
  timing	
  
•  Vendors	
  
–  SOASTA,	
  New	
  Relic,	
  most	
  synthetic	
  vendors	
  
–  Boomerang	
  (open	
  source)	
  
–  Google	
  Analytics	
  User	
  Timings	
  
DATA,	
  DATA,	
  DATA	
  
•  For	
  either	
  RUM	
  technique,	
  we	
  need	
  A	
  LOT	
  of	
  
data	
  
•  Too	
  many	
  variances	
  
•  Most	
  vendors	
  don’t	
  use	
  averages	
  
–  Medians	
  and	
  percentiles	
  
Real	
  user	
  measurements	
  
•  Pros	
  
–  Real	
  users,	
  real	
  browsers,	
  real	
  world	
  conditions	
  
–  If	
  you	
  use	
  your	
  own	
  content,	
  could	
  be	
  close	
  to	
  what	
  
your	
  users	
  experience	
  
–  With	
  enough	
  data,	
  great	
  for	
  granular	
  analysis	
  
•  Cons	
  
–  We	
  need	
  a	
  lot	
  of	
  data	
  
–  If	
  you	
  do	
  it	
  yourself,	
  data	
  infrastructures	
  aren’t	
  trivial	
  
Measurement	
  Metrics	
  
Client	
   Server	
  
Client	
   Server	
  
1	
  x	
  RTT	
  	
  
Client	
   Server	
  
DNS	
  
DNS	
  
TCP	
  
Client	
   Server	
  
DNS	
  
DNS	
  
TCP	
  
Client	
   Server	
  
DNS	
  
DNS	
  
(TLS)	
  
TCP	
  
Client	
   Server	
  
DNS	
  
DNS	
  
(TLS)	
  
HTTP	
  
TCP	
  
Client	
   Server	
  
DNS	
  
DNS	
  
(TLS)	
  
HTTP	
  
Download	
  
DNS	
   TCP	
   (TLS)	
   TTFB	
   Download	
  (TTLB-­‐TTFB)	
  
Time	
  
DNS	
   TCP	
   (TLS)	
   TTFB	
   Download	
  (TTLB-­‐TTFB)	
  
Time	
  
DNS	
   RTT	
  to	
  DNS	
  server,	
  DNS	
  iterations,	
  DNS	
  caching	
  and	
  	
  TTLs	
  
DNS	
   TCP	
   (TLS)	
   TTFB	
   Download	
  (TTLB-­‐TTFB)	
  
Time	
  
DNS	
  
TCP	
  
RTT	
  to	
  DNS	
  server,	
  DNS	
  iterations,	
  DNS	
  caching	
  and	
  	
  TTLs	
  
RTT	
  to	
  cache	
  server	
  (CDN	
  footprint	
  &	
  routing	
  algorithms)	
  
DNS	
   TCP	
   (TLS)	
   TTFB	
   Download	
  (TTLB-­‐TTFB)	
  
Time	
  
DNS	
  
TCP	
  
(TLS)	
  
RTT	
  to	
  DNS	
  server,	
  DNS	
  iterations,	
  DNS	
  caching	
  and	
  	
  TTLs	
  
RTT	
  to	
  cache	
  server	
  (CDN	
  footprint	
  &	
  routing	
  algorithms)	
  
RTT	
  to	
  cache	
  server	
  (or	
  RTTs	
  depending	
  on	
  TLS	
  False	
  Start),	
  
efficiency	
  of	
  TLS	
  engine	
  
DNS	
   TCP	
   (TLS)	
   TTFB	
   Download	
  (TTLB-­‐TTFB)	
  
Time	
  
DNS	
  
TCP	
  
(TLS)	
  
TTFB	
  
RTT	
  to	
  DNS	
  server,	
  DNS	
  iterations,	
  DNS	
  caching	
  and	
  	
  TTLs	
  
RTT	
  to	
  cache	
  server	
  (CDN	
  footprint	
  &	
  routing	
  algorithms)	
  
RTT	
  to	
  cache	
  server	
  (or	
  RTTs	
  depending	
  on	
  TLS	
  False	
  Start),	
  
efficiency	
  of	
  TLS	
  engine	
  
RTT	
  to	
  where	
  the	
  object	
  is	
  stored	
  +	
  storage	
  efficiency	
  	
  
(different	
  for	
  requests	
  to	
  origin);	
  lower	
  bound	
  =	
  network	
  RTT	
  
DNS	
   TCP	
   (TLS)	
   TTFB	
   Download	
  (TTLB-­‐TTFB)	
  
Time	
  
DNS	
  
TCP	
  
(TLS)	
  
TTFB	
  
TTLB-­‐TTFB	
  
RTT	
  to	
  DNS	
  server,	
  DNS	
  iterations,	
  DNS	
  caching	
  and	
  	
  TTLs	
  
RTT	
  to	
  cache	
  server	
  (CDN	
  footprint	
  &	
  routing	
  algorithms)	
  
RTT	
  to	
  cache	
  server	
  (or	
  RTTs	
  depending	
  on	
  TLS	
  False	
  Start),	
  
efficiency	
  of	
  TLS	
  engine	
  
RTT	
  to	
  where	
  the	
  object	
  is	
  stored	
  +	
  storage	
  efficiency	
  	
  
(different	
  for	
  requests	
  to	
  origin);	
  lower	
  bound	
  =	
  network	
  RTT	
  
Bandwidth,	
  congestion	
  avoidance	
  algorithms	
  (and	
  RTT!)	
  
Core	
  object	
  metrics	
  
•  Not	
  every	
  request	
  experiences	
  every	
  metric:	
  
–  DNS:	
  once	
  per	
  domain	
  
–  TCP/TLS	
  once	
  per	
  connection	
  
–  HTTP/Download	
  for	
  every	
  object	
  (not	
  already	
  in	
  
browser	
  cache)	
  
•  All	
  techniques/tools	
  measure	
  and	
  report	
  these	
  
metrics	
  
Resource	
  timing	
  
http://www.w3.org/TR/resource-­‐timing/	
  
Resource	
  timing	
  
window.performance.getEntries()
object	
  metrics	
  	
  
	
  
or	
  
	
  
page	
  metrics	
  
Download:	
  15Mbps	
  
	
  
Upload:	
  5Mbps	
  
	
  
Latency:	
  10	
  ms,	
  25	
  ms	
  
10	
  msec	
   25	
  msec	
  
10	
  msec	
   25	
  msec	
  
onload	
   Speed	
  Index	
   Start	
  Render	
  
10	
  msec	
  
25	
  msec	
  
What	
  the…???	
  
•  We	
  always	
  assume	
  “all	
  things	
  equal”	
  
•  Too	
  many	
  factors	
  affect	
  page	
  load	
  time	
  
–  3rd	
  parties	
  (sometimes	
  varying),	
  content	
  form	
  origin,	
  
layout,	
  JS	
  execution,	
  etc	
  
•  Too	
  much	
  variance	
  
3rd	
  parties	
  
Source:	
  httparchive.org	
  
To	
  be	
  clear…	
  
•  Always	
  use	
  webpagetest	
  (or	
  something	
  like	
  it)	
  to	
  understand	
  your	
  
application’s	
  performance	
  profile	
  
•  Continue	
  to	
  monitor	
  application	
  performance,	
  and	
  always	
  spot	
  
check	
  
•  Be	
  extremely	
  careful	
  when	
  using	
  it	
  to	
  gage/compare	
  	
  CDN	
  
performance,	
  it	
  can	
  mislead	
  you	
  
–  If	
  using	
  RUM	
  to	
  measure	
  page	
  metrics,	
  with	
  lots	
  of	
  data,	
  things	
  
become	
  a	
  little	
  more	
  meaningful	
  (data	
  volume	
  handles	
  variance)	
  
What	
  to	
  measure	
  
(plus	
  the	
  right	
  metrics)	
  
Most	
  commonly…	
  
•  Pick	
  a	
  “normal	
  object”	
  
–  e.g.	
  some	
  object	
  on	
  the	
  home	
  page	
  
•  Set	
  up	
  testing	
  from	
  multiple	
  places	
  (usually	
  with	
  a	
  
synthetic	
  vendor)	
  
–  And	
  hopefully	
  not	
  backbone!	
  
•  Compare	
  either	
  overall	
  load	
  time,	
  or	
  some	
  object	
  metrics	
  
Totally	
  application-­‐dependent	
  
Example:	
  web	
  application	
  
Web	
  application:	
  objects	
  
•  Ratio	
  of	
  objects	
  coming	
  from	
  CDN	
  cache	
  vs	
  
those	
  coming	
  from	
  origin	
  (through	
  CDN)	
  
should	
  determine	
  objects	
  to	
  test	
  
•  If	
  HTML	
  is	
  from	
  origin,	
  we	
  must	
  measure	
  it	
  
– Essential	
  to	
  critical	
  page	
  metrics	
  
Web	
  application:	
  object	
  sizes	
  
Web	
  application:	
  metrics	
  
•  On	
  any	
  page	
  
–  DNS	
  queries	
  only	
  happen	
  a	
  small	
  number	
  of	
  times	
  
–  6	
  TCP	
  connections	
  per	
  domain	
  
–  Many	
  many	
  many	
  HTTP	
  fetches	
  
•  Core	
  metrics	
  
–  TTFB	
  
–  Download	
  (TTLB-­‐TTFB)	
  if	
  important	
  large	
  objects	
  
–  Should	
  have	
  a	
  good	
  idea	
  of	
  DNS/TCP/TLS,	
  but	
  less	
  critical	
  
Web	
  application	
  
•  If	
  CDN	
  only	
  for	
  static/cacheable	
  objects:	
  
–  One	
  or	
  two	
  representative	
  assets	
  	
  
–  TTFB	
  and	
  maybe	
  download	
  most	
  important	
  
Client	
   CDN	
  Node	
  
X-Cache: HIT
Web	
  application	
  
•  If	
  CDN	
  also	
  for	
  whole	
  site	
  
–  Sample	
  of	
  key	
  HTML	
  pages,	
  delivered	
  from	
  origin	
  
–  TTFB	
  will	
  show	
  efficiency	
  of	
  routing	
  (and	
  connection	
  
management)	
  	
  to	
  origin	
  
–  TTLB	
  will	
  show	
  efficiency	
  of	
  delivery	
  
Web	
  Server	
  Client	
   CDN	
  Node	
  
Web	
  application	
  
•  If	
  CDN	
  also	
  for	
  whole	
  site	
  
–  Sample	
  of	
  key	
  HTML	
  pages,	
  delivered	
  from	
  origin	
  
–  TTFB	
  will	
  show	
  efficiency	
  of	
  routing	
  (and	
  connection	
  
management)	
  	
  to	
  origin	
  
–  TTLB	
  will	
  show	
  efficiency	
  of	
  delivery	
  
Web	
  Server	
  Client	
   CDN	
  Node	
   CDN	
  Node	
  
Example:	
  software	
  download	
  
Software	
  download:	
  objects	
  
•  Pick	
  a	
  standard	
  file	
  that	
  users	
  will	
  be	
  
downloading	
  
–  Representative	
  file	
  size	
  
•  Also	
  pick	
  something	
  you	
  expect	
  to	
  be	
  on	
  the	
  
CDN	
  but	
  not	
  fetched	
  all	
  that	
  often	
  
–  More	
  on	
  this	
  later….	
  
Software	
  download:	
  metrics	
  
•  Ratio	
  of	
  	
  TCP-­‐to-­‐HTTP	
  is	
  closer	
  to	
  1-­‐1	
  
–  Especially	
  if	
  you	
  have	
  a	
  dedicated	
  download	
  domain	
  
–  Could	
  mean	
  the	
  same	
  for	
  DNS	
  
•  For	
  large	
  files,	
  we	
  care	
  about	
  download	
  time	
  
•  Core	
  metrics:	
  
–  TTFB	
  (+	
  TCP	
  and	
  maybe	
  DNS,	
  if	
  applicable)	
  
–  TTLB	
  
–  TTLB-­‐TTFB	
  will	
  usually	
  be	
  a	
  larger	
  component	
  
 Bandwidth/Download	
  measurements	
  
Download	
  time	
  
•  Careful	
  about	
  where	
  you	
  expect	
  this	
  download	
  to	
  happen	
  in	
  the	
  
lifetime	
  of	
  a	
  TCP	
  connection	
  
•  In	
  the	
  beginning	
  of	
  the	
  connection	
  
–  Function	
  of	
  init_cwnd	
  and	
  TCP	
  slow	
  start	
  (and	
  RTT)	
  
	
  
•  Later	
  in	
  the	
  connection	
  
–  Function	
  of	
  congestion	
  avoidance	
  and	
  bandwidth	
  
•  Large	
  files	
  will	
  experience	
  both	
  
time	
  
bytes	
  
Download	
  time	
  
•  Careful	
  about	
  where	
  you	
  expect	
  this	
  download	
  to	
  happen	
  in	
  the	
  
lifetime	
  of	
  a	
  TCP	
  connection	
  
•  In	
  the	
  beginning	
  of	
  the	
  connection	
  
–  Function	
  of	
  init_cwnd	
  and	
  TCP	
  slow	
  start	
  (and	
  RTT)	
  
	
  
•  Later	
  in	
  the	
  connection	
  
–  Function	
  of	
  congestion	
  avoidance	
  and	
  bandwidth	
  
•  Large	
  files	
  will	
  experience	
  both	
  
Cache	
  hit	
  ratios	
  
Cache	
  hit	
  ratio:	
  traditional	
  calculation	
  
1	
  -­‐	
  	
  
Requests	
  to	
  Origin	
  	
  
Total	
  Requests	
  
Origin	
  
Origin	
  
Cache	
  
	
  
	
  
	
  
	
  
TCP	
  
Origin	
  
Cache	
  
	
  
	
  
	
  
	
  
HTTP	
  
Origin	
  
Cache	
  
	
  
	
  
	
  
	
  
Origin	
  
Cache	
  
	
  
	
  
	
  
	
  
HTTP	
  
Origin	
  
Cache	
  
	
  
	
  
	
  
	
  
HTTP	
  
Origin	
  
Cache	
  
	
  
	
  
	
  
	
  
HTTP	
  
Origin	
  
Cache	
  
	
  
	
  
	
  
	
  
HTTP	
  
Origin	
  
Cache	
  
	
  
	
  
	
  
	
  
HOT	
   COLD	
  
Origin	
  
Cache	
  
	
  
	
  
	
  
	
  
cache	
  “hit”	
  
Cache	
  hit	
  ratio:	
  traditional	
  calculation	
  
1	
  -­‐	
  	
  
Requests	
  to	
  Origin	
  	
  
Total	
  Requests	
  
Isn’t	
  this	
  better?	
  
Hits	
  
Total	
  Requests	
  
@edge	
  
Isn’t	
  this	
  better?	
  
Hits	
  
Hits	
  +	
  Misses	
  
@edge	
  
Cache	
  hit	
  ratio	
  
vs.	
  1	
  -­‐	
  	
  Requests	
  to	
  Origin	
  	
  
Total	
  Requests	
  
Hits	
  
Hits	
  +	
  Misses	
  
@edge	
  
Cache	
  hit	
  ratio	
  
vs.	
  1	
  -­‐	
  	
  Requests	
  to	
  Origin	
  	
  
Total	
  Requests	
  
Hits	
  
Hits	
  +	
  Misses	
  
@edge	
  
Offload	
  
Cache	
  hit	
  ratio	
  
vs.	
  1	
  -­‐	
  	
  Requests	
  to	
  Origin	
  	
  
Total	
  Requests	
  
Hits	
  
Hits	
  +	
  Misses	
  
@edge	
  
Offload	
   Performance	
  
Effect	
  on	
  long	
  tail	
  content	
  
Effect	
  on	
  long	
  tail	
  content	
  
(long	
  tail:	
  Cacheable	
  but	
  seldom	
  fetched)	
  
Popular	
   Medium	
  Tail	
  (1hr)	
   Long	
  tail	
  	
  (6hr)	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
Popular	
   Medium	
  Tail	
  (1hr)	
   Long	
  tail	
  	
  (6hr)	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
Connect	
  (median)	
  
Popular	
   14msec	
  
1hr	
  Tail	
   15msec	
  
6hr	
  Tail	
   16msec	
  
Popular	
   Medium	
  Tail	
  (1hr)	
   Long	
  tail	
  	
  (6hr)	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
Connect	
  (median)	
  
Popular	
   14msec	
  
1hr	
  Tail	
   15msec	
  
6hr	
  Tail	
   16msec	
  
6,400+	
  measurements	
  
77,000+	
  measurements	
  
38,000+	
  measurements	
  
Popular	
   Medium	
  Tail	
  (1hr)	
   Long	
  tail	
  	
  (6hr)	
  
Connect	
  (median)	
  
Popular	
   14msec	
  
1hr	
  Tail	
   15msec	
  
6hr	
  Tail	
   16msec	
  
6,400+	
  measurements	
  
77,000+	
  measurements	
  
38,000+	
  measurements	
  
Popular	
   Medium	
  Tail	
  (1hr)	
   Long	
  tail	
  	
  (6hr)	
  
Connect	
  (median)	
   Wait	
  (median)	
  
Popular	
   14msec	
   19msec	
  
1hr	
  Tail	
   15msec	
   26msec	
  
6hr	
  Tail	
   16msec	
   32msec	
  
6,400+	
  measurements	
  
77,000+	
  measurements	
  
38,000+	
  measurements	
  
Popular	
   Medium	
  Tail	
  (1hr)	
   Long	
  tail	
  	
  (6hr)	
  
Isn’t	
  this	
  better?	
  
Now…	
  
Does	
  all	
  this	
  really	
  matter?	
  
Does	
  all	
  this	
  really	
  matter?	
  
Yes,	
  but…	
  
The	
  bigger	
  picture	
  
•  It’s	
  really	
  easy	
  to	
  lock	
  in	
  on	
  a	
  metric	
  
•  Performance	
  absolutely	
  matters	
  
•  True	
  performance	
  isn’t	
  always	
  as	
  easy	
  to	
  
measure	
  
Storage	
  model	
  and	
  long	
  tail	
  content	
  
Cache	
  hit	
  ratios	
  for	
  offload	
  and	
  
performance	
  
Footprint	
  
HTTP	
  vs	
  TLS	
  footprint	
  
Caching	
  something	
  you	
  didn’t	
  think	
  you	
  
could	
  cache	
  
Serve	
  stale	
  content	
  if	
  necessary	
  
Key	
  takeaways	
  
•  Everything	
  is	
  application-­‐dependent	
  
–  Evaluate	
  how	
  your	
  application	
  works	
  and	
  what	
  impacts	
  performance	
  
the	
  most	
  
•  Don’t	
  get	
  locked	
  into	
  a	
  single	
  number	
  
•  Always	
  know	
  your	
  application	
  performance	
  and	
  bottlenecks	
  
•  Be	
  mindful	
  of	
  the	
  bigger	
  picture!	
  
Thank	
  you!	
  
hooman@fastly.com	
  

Más contenido relacionado

La actualidad más candente

Benchmarking NGINX for Accuracy and Results
Benchmarking NGINX for Accuracy and ResultsBenchmarking NGINX for Accuracy and Results
Benchmarking NGINX for Accuracy and ResultsNGINX, Inc.
 
Content Devilery Network
Content Devilery NetworkContent Devilery Network
Content Devilery NetworkSanjiv Pradhan
 
hbaseconasia2017: Building online HBase cluster of Zhihu based on Kubernetes
hbaseconasia2017: Building online HBase cluster of Zhihu based on Kuberneteshbaseconasia2017: Building online HBase cluster of Zhihu based on Kubernetes
hbaseconasia2017: Building online HBase cluster of Zhihu based on KubernetesHBaseCon
 
Network latency - measurement and improvement
Network latency - measurement and improvementNetwork latency - measurement and improvement
Network latency - measurement and improvementMatt Willsher
 
Why Use a Content Delivery Network (CDN)?
Why Use a Content Delivery Network (CDN)?Why Use a Content Delivery Network (CDN)?
Why Use a Content Delivery Network (CDN)?Medianova
 
Making communication across boundaries simple with Azure Service Bus
Making communication across boundaries simple with Azure Service BusMaking communication across boundaries simple with Azure Service Bus
Making communication across boundaries simple with Azure Service BusParticular Software
 
Cdn technology overview
Cdn technology overviewCdn technology overview
Cdn technology overviewYoohyun Kim
 
Big data in the energy sector
Big data in the energy sectorBig data in the energy sector
Big data in the energy sectorFileCatalyst
 
What to consider when monitoring microservices
What to consider when monitoring microservicesWhat to consider when monitoring microservices
What to consider when monitoring microservicesParticular Software
 
How Time To First Byte (TTFB) Impacts Your Site’s Performance
How Time To First Byte (TTFB) Impacts Your Site’s PerformanceHow Time To First Byte (TTFB) Impacts Your Site’s Performance
How Time To First Byte (TTFB) Impacts Your Site’s PerformanceMedianova
 
Message Queuing on a Large Scale: IMVUs stateful real-time message queue for ...
Message Queuing on a Large Scale: IMVUs stateful real-time message queue for ...Message Queuing on a Large Scale: IMVUs stateful real-time message queue for ...
Message Queuing on a Large Scale: IMVUs stateful real-time message queue for ...Jon Watte
 
Web performance optimization - MercadoLibre
Web performance optimization - MercadoLibreWeb performance optimization - MercadoLibre
Web performance optimization - MercadoLibrePablo Moretti
 
Configuring Apache Servers for Better Web Perormance
Configuring Apache Servers for Better Web PerormanceConfiguring Apache Servers for Better Web Perormance
Configuring Apache Servers for Better Web PerormanceSpark::red
 
Apache Flume - DataDayTexas
Apache Flume - DataDayTexasApache Flume - DataDayTexas
Apache Flume - DataDayTexasArvind Prabhakar
 

La actualidad más candente (20)

Benchmarking NGINX for Accuracy and Results
Benchmarking NGINX for Accuracy and ResultsBenchmarking NGINX for Accuracy and Results
Benchmarking NGINX for Accuracy and Results
 
Content Devilery Network
Content Devilery NetworkContent Devilery Network
Content Devilery Network
 
hbaseconasia2017: Building online HBase cluster of Zhihu based on Kubernetes
hbaseconasia2017: Building online HBase cluster of Zhihu based on Kuberneteshbaseconasia2017: Building online HBase cluster of Zhihu based on Kubernetes
hbaseconasia2017: Building online HBase cluster of Zhihu based on Kubernetes
 
Network latency - measurement and improvement
Network latency - measurement and improvementNetwork latency - measurement and improvement
Network latency - measurement and improvement
 
Why Use a Content Delivery Network (CDN)?
Why Use a Content Delivery Network (CDN)?Why Use a Content Delivery Network (CDN)?
Why Use a Content Delivery Network (CDN)?
 
Network Latency
Network LatencyNetwork Latency
Network Latency
 
Making communication across boundaries simple with Azure Service Bus
Making communication across boundaries simple with Azure Service BusMaking communication across boundaries simple with Azure Service Bus
Making communication across boundaries simple with Azure Service Bus
 
Cdn technology overview
Cdn technology overviewCdn technology overview
Cdn technology overview
 
Http2 in practice
Http2 in practiceHttp2 in practice
Http2 in practice
 
Big data in the energy sector
Big data in the energy sectorBig data in the energy sector
Big data in the energy sector
 
Load balancing at tuenti
Load balancing at tuentiLoad balancing at tuenti
Load balancing at tuenti
 
HTTP/2 Prioritization
HTTP/2 PrioritizationHTTP/2 Prioritization
HTTP/2 Prioritization
 
What to consider when monitoring microservices
What to consider when monitoring microservicesWhat to consider when monitoring microservices
What to consider when monitoring microservices
 
How Time To First Byte (TTFB) Impacts Your Site’s Performance
How Time To First Byte (TTFB) Impacts Your Site’s PerformanceHow Time To First Byte (TTFB) Impacts Your Site’s Performance
How Time To First Byte (TTFB) Impacts Your Site’s Performance
 
25 snowflake
25 snowflake25 snowflake
25 snowflake
 
Message Queuing on a Large Scale: IMVUs stateful real-time message queue for ...
Message Queuing on a Large Scale: IMVUs stateful real-time message queue for ...Message Queuing on a Large Scale: IMVUs stateful real-time message queue for ...
Message Queuing on a Large Scale: IMVUs stateful real-time message queue for ...
 
Web performance optimization - MercadoLibre
Web performance optimization - MercadoLibreWeb performance optimization - MercadoLibre
Web performance optimization - MercadoLibre
 
Configuring Apache Servers for Better Web Perormance
Configuring Apache Servers for Better Web PerormanceConfiguring Apache Servers for Better Web Perormance
Configuring Apache Servers for Better Web Perormance
 
Apache Flume - DataDayTexas
Apache Flume - DataDayTexasApache Flume - DataDayTexas
Apache Flume - DataDayTexas
 
How fast is it?
How fast is it?How fast is it?
How fast is it?
 

Destacado

Hadoop summit 2010 frameworks panel elephant bird
Hadoop summit 2010 frameworks panel elephant birdHadoop summit 2010 frameworks panel elephant bird
Hadoop summit 2010 frameworks panel elephant birdKevin Weil
 
Using RabbitMQ and Netty library to implement RPC protocol
Using RabbitMQ and Netty library to implement RPC protocolUsing RabbitMQ and Netty library to implement RPC protocol
Using RabbitMQ and Netty library to implement RPC protocolTho Q Luong Luong
 
Debugging Your CDN - Austin Spires at Fastly Altitude 2015
Debugging Your CDN - Austin Spires at Fastly Altitude 2015Debugging Your CDN - Austin Spires at Fastly Altitude 2015
Debugging Your CDN - Austin Spires at Fastly Altitude 2015Fastly
 
Hadoop at Twitter (Hadoop Summit 2010)
Hadoop at Twitter (Hadoop Summit 2010)Hadoop at Twitter (Hadoop Summit 2010)
Hadoop at Twitter (Hadoop Summit 2010)Kevin Weil
 
Spatial Analytics, Where 2.0 2010
Spatial Analytics, Where 2.0 2010Spatial Analytics, Where 2.0 2010
Spatial Analytics, Where 2.0 2010Kevin Weil
 
Analyzing Big Data at Twitter (Web 2.0 Expo NYC Sep 2010)
Analyzing Big Data at Twitter (Web 2.0 Expo NYC Sep 2010)Analyzing Big Data at Twitter (Web 2.0 Expo NYC Sep 2010)
Analyzing Big Data at Twitter (Web 2.0 Expo NYC Sep 2010)Kevin Weil
 
Big Data at Twitter, Chirp 2010
Big Data at Twitter, Chirp 2010Big Data at Twitter, Chirp 2010
Big Data at Twitter, Chirp 2010Kevin Weil
 
Hadoop and pig at twitter (oscon 2010)
Hadoop and pig at twitter (oscon 2010)Hadoop and pig at twitter (oscon 2010)
Hadoop and pig at twitter (oscon 2010)Kevin Weil
 
NoSQL at Twitter (NoSQL EU 2010)
NoSQL at Twitter (NoSQL EU 2010)NoSQL at Twitter (NoSQL EU 2010)
NoSQL at Twitter (NoSQL EU 2010)Kevin Weil
 
Using CDN to improve performance
Using CDN to improve performanceUsing CDN to improve performance
Using CDN to improve performanceGea-Suan Lin
 
Rainbird: Realtime Analytics at Twitter (Strata 2011)
Rainbird: Realtime Analytics at Twitter (Strata 2011)Rainbird: Realtime Analytics at Twitter (Strata 2011)
Rainbird: Realtime Analytics at Twitter (Strata 2011)Kevin Weil
 
Thrift vs Protocol Buffers vs Avro - Biased Comparison
Thrift vs Protocol Buffers vs Avro - Biased ComparisonThrift vs Protocol Buffers vs Avro - Biased Comparison
Thrift vs Protocol Buffers vs Avro - Biased ComparisonIgor Anishchenko
 
Surviving A DDoS Attack: Securing CDN Traffic at CloudFlare
Surviving A DDoS Attack: Securing CDN Traffic at CloudFlareSurviving A DDoS Attack: Securing CDN Traffic at CloudFlare
Surviving A DDoS Attack: Securing CDN Traffic at CloudFlareCloudflare
 
Incident Command: The far side of the edge
Incident Command: The far side of the edgeIncident Command: The far side of the edge
Incident Command: The far side of the edgeFastly
 
Protocol Buffers and Hadoop at Twitter
Protocol Buffers and Hadoop at TwitterProtocol Buffers and Hadoop at Twitter
Protocol Buffers and Hadoop at TwitterKevin Weil
 

Destacado (15)

Hadoop summit 2010 frameworks panel elephant bird
Hadoop summit 2010 frameworks panel elephant birdHadoop summit 2010 frameworks panel elephant bird
Hadoop summit 2010 frameworks panel elephant bird
 
Using RabbitMQ and Netty library to implement RPC protocol
Using RabbitMQ and Netty library to implement RPC protocolUsing RabbitMQ and Netty library to implement RPC protocol
Using RabbitMQ and Netty library to implement RPC protocol
 
Debugging Your CDN - Austin Spires at Fastly Altitude 2015
Debugging Your CDN - Austin Spires at Fastly Altitude 2015Debugging Your CDN - Austin Spires at Fastly Altitude 2015
Debugging Your CDN - Austin Spires at Fastly Altitude 2015
 
Hadoop at Twitter (Hadoop Summit 2010)
Hadoop at Twitter (Hadoop Summit 2010)Hadoop at Twitter (Hadoop Summit 2010)
Hadoop at Twitter (Hadoop Summit 2010)
 
Spatial Analytics, Where 2.0 2010
Spatial Analytics, Where 2.0 2010Spatial Analytics, Where 2.0 2010
Spatial Analytics, Where 2.0 2010
 
Analyzing Big Data at Twitter (Web 2.0 Expo NYC Sep 2010)
Analyzing Big Data at Twitter (Web 2.0 Expo NYC Sep 2010)Analyzing Big Data at Twitter (Web 2.0 Expo NYC Sep 2010)
Analyzing Big Data at Twitter (Web 2.0 Expo NYC Sep 2010)
 
Big Data at Twitter, Chirp 2010
Big Data at Twitter, Chirp 2010Big Data at Twitter, Chirp 2010
Big Data at Twitter, Chirp 2010
 
Hadoop and pig at twitter (oscon 2010)
Hadoop and pig at twitter (oscon 2010)Hadoop and pig at twitter (oscon 2010)
Hadoop and pig at twitter (oscon 2010)
 
NoSQL at Twitter (NoSQL EU 2010)
NoSQL at Twitter (NoSQL EU 2010)NoSQL at Twitter (NoSQL EU 2010)
NoSQL at Twitter (NoSQL EU 2010)
 
Using CDN to improve performance
Using CDN to improve performanceUsing CDN to improve performance
Using CDN to improve performance
 
Rainbird: Realtime Analytics at Twitter (Strata 2011)
Rainbird: Realtime Analytics at Twitter (Strata 2011)Rainbird: Realtime Analytics at Twitter (Strata 2011)
Rainbird: Realtime Analytics at Twitter (Strata 2011)
 
Thrift vs Protocol Buffers vs Avro - Biased Comparison
Thrift vs Protocol Buffers vs Avro - Biased ComparisonThrift vs Protocol Buffers vs Avro - Biased Comparison
Thrift vs Protocol Buffers vs Avro - Biased Comparison
 
Surviving A DDoS Attack: Securing CDN Traffic at CloudFlare
Surviving A DDoS Attack: Securing CDN Traffic at CloudFlareSurviving A DDoS Attack: Securing CDN Traffic at CloudFlare
Surviving A DDoS Attack: Securing CDN Traffic at CloudFlare
 
Incident Command: The far side of the edge
Incident Command: The far side of the edgeIncident Command: The far side of the edge
Incident Command: The far side of the edge
 
Protocol Buffers and Hadoop at Twitter
Protocol Buffers and Hadoop at TwitterProtocol Buffers and Hadoop at Twitter
Protocol Buffers and Hadoop at Twitter
 

Similar a Measuring CDN performance and why you're doing it wrong

A Modern Approach to Performance Monitoring
A Modern Approach to Performance MonitoringA Modern Approach to Performance Monitoring
A Modern Approach to Performance MonitoringCliff Crocker
 
Add observability to your django application - PyCon FR 2019
Add observability to your django application - PyCon FR 2019Add observability to your django application - PyCon FR 2019
Add observability to your django application - PyCon FR 2019Bleemeo
 
Edge 2014: A Modern Approach to Performance Monitoring
Edge 2014: A Modern Approach to Performance MonitoringEdge 2014: A Modern Approach to Performance Monitoring
Edge 2014: A Modern Approach to Performance MonitoringAkamai Technologies
 
Data Analytics Service Company and Its Ruby Usage
Data Analytics Service Company and Its Ruby UsageData Analytics Service Company and Its Ruby Usage
Data Analytics Service Company and Its Ruby UsageSATOSHI TAGOMORI
 
How to create custom dashboards in Elastic Search / Kibana with Performance V...
How to create custom dashboards in Elastic Search / Kibana with Performance V...How to create custom dashboards in Elastic Search / Kibana with Performance V...
How to create custom dashboards in Elastic Search / Kibana with Performance V...PerformanceVision (previously SecurActive)
 
I pushed in production :). Have a nice weekend
I pushed in production :). Have a nice weekendI pushed in production :). Have a nice weekend
I pushed in production :). Have a nice weekendNicolas Carlier
 
Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog
 Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog
Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDogRedis Labs
 
SQL Explore 2012: P&T Part 1
SQL Explore 2012: P&T Part 1SQL Explore 2012: P&T Part 1
SQL Explore 2012: P&T Part 1sqlserver.co.il
 
Debugging Microservices - key challenges and techniques - Microservices Odesa...
Debugging Microservices - key challenges and techniques - Microservices Odesa...Debugging Microservices - key challenges and techniques - Microservices Odesa...
Debugging Microservices - key challenges and techniques - Microservices Odesa...Lohika_Odessa_TechTalks
 
Tech talk microservices debugging
Tech talk microservices debuggingTech talk microservices debugging
Tech talk microservices debuggingAndrey Kolodnitsky
 
Overview of data analytics service: Treasure Data Service
Overview of data analytics service: Treasure Data ServiceOverview of data analytics service: Treasure Data Service
Overview of data analytics service: Treasure Data ServiceSATOSHI TAGOMORI
 
AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...
AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...
AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...Amazon Web Services
 
Never Stop Exploring - Pushing the Limits of Solr: Presented by Anirudha Jadh...
Never Stop Exploring - Pushing the Limits of Solr: Presented by Anirudha Jadh...Never Stop Exploring - Pushing the Limits of Solr: Presented by Anirudha Jadh...
Never Stop Exploring - Pushing the Limits of Solr: Presented by Anirudha Jadh...Lucidworks
 
Customer Applications Of Hadoop On Red Hat Storage Server
Customer Applications Of Hadoop On Red Hat Storage ServerCustomer Applications Of Hadoop On Red Hat Storage Server
Customer Applications Of Hadoop On Red Hat Storage ServerRed_Hat_Storage
 
Dynamic Content Acceleration: Lightning Fast Web Apps with Amazon CloudFront ...
Dynamic Content Acceleration: Lightning Fast Web Apps with Amazon CloudFront ...Dynamic Content Acceleration: Lightning Fast Web Apps with Amazon CloudFront ...
Dynamic Content Acceleration: Lightning Fast Web Apps with Amazon CloudFront ...Amazon Web Services
 
Eric Proegler Oredev Performance Testing in New Contexts
Eric Proegler Oredev Performance Testing in New ContextsEric Proegler Oredev Performance Testing in New Contexts
Eric Proegler Oredev Performance Testing in New ContextsEric Proegler
 
Website performance optimization QA
Website performance optimization QAWebsite performance optimization QA
Website performance optimization QADenis Dudaev
 
Correlate Log Data with Business Metrics Like a Jedi
Correlate Log Data with Business Metrics Like a JediCorrelate Log Data with Business Metrics Like a Jedi
Correlate Log Data with Business Metrics Like a JediTrevor Parsons
 
Engineering Machine Learning Data Pipelines Series: Streaming New Data as It ...
Engineering Machine Learning Data Pipelines Series: Streaming New Data as It ...Engineering Machine Learning Data Pipelines Series: Streaming New Data as It ...
Engineering Machine Learning Data Pipelines Series: Streaming New Data as It ...Precisely
 
Building Scalable Big Data Infrastructure Using Open Source Software Presenta...
Building Scalable Big Data Infrastructure Using Open Source Software Presenta...Building Scalable Big Data Infrastructure Using Open Source Software Presenta...
Building Scalable Big Data Infrastructure Using Open Source Software Presenta...ssuserd3a367
 

Similar a Measuring CDN performance and why you're doing it wrong (20)

A Modern Approach to Performance Monitoring
A Modern Approach to Performance MonitoringA Modern Approach to Performance Monitoring
A Modern Approach to Performance Monitoring
 
Add observability to your django application - PyCon FR 2019
Add observability to your django application - PyCon FR 2019Add observability to your django application - PyCon FR 2019
Add observability to your django application - PyCon FR 2019
 
Edge 2014: A Modern Approach to Performance Monitoring
Edge 2014: A Modern Approach to Performance MonitoringEdge 2014: A Modern Approach to Performance Monitoring
Edge 2014: A Modern Approach to Performance Monitoring
 
Data Analytics Service Company and Its Ruby Usage
Data Analytics Service Company and Its Ruby UsageData Analytics Service Company and Its Ruby Usage
Data Analytics Service Company and Its Ruby Usage
 
How to create custom dashboards in Elastic Search / Kibana with Performance V...
How to create custom dashboards in Elastic Search / Kibana with Performance V...How to create custom dashboards in Elastic Search / Kibana with Performance V...
How to create custom dashboards in Elastic Search / Kibana with Performance V...
 
I pushed in production :). Have a nice weekend
I pushed in production :). Have a nice weekendI pushed in production :). Have a nice weekend
I pushed in production :). Have a nice weekend
 
Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog
 Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog
Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog
 
SQL Explore 2012: P&T Part 1
SQL Explore 2012: P&T Part 1SQL Explore 2012: P&T Part 1
SQL Explore 2012: P&T Part 1
 
Debugging Microservices - key challenges and techniques - Microservices Odesa...
Debugging Microservices - key challenges and techniques - Microservices Odesa...Debugging Microservices - key challenges and techniques - Microservices Odesa...
Debugging Microservices - key challenges and techniques - Microservices Odesa...
 
Tech talk microservices debugging
Tech talk microservices debuggingTech talk microservices debugging
Tech talk microservices debugging
 
Overview of data analytics service: Treasure Data Service
Overview of data analytics service: Treasure Data ServiceOverview of data analytics service: Treasure Data Service
Overview of data analytics service: Treasure Data Service
 
AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...
AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...
AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...
 
Never Stop Exploring - Pushing the Limits of Solr: Presented by Anirudha Jadh...
Never Stop Exploring - Pushing the Limits of Solr: Presented by Anirudha Jadh...Never Stop Exploring - Pushing the Limits of Solr: Presented by Anirudha Jadh...
Never Stop Exploring - Pushing the Limits of Solr: Presented by Anirudha Jadh...
 
Customer Applications Of Hadoop On Red Hat Storage Server
Customer Applications Of Hadoop On Red Hat Storage ServerCustomer Applications Of Hadoop On Red Hat Storage Server
Customer Applications Of Hadoop On Red Hat Storage Server
 
Dynamic Content Acceleration: Lightning Fast Web Apps with Amazon CloudFront ...
Dynamic Content Acceleration: Lightning Fast Web Apps with Amazon CloudFront ...Dynamic Content Acceleration: Lightning Fast Web Apps with Amazon CloudFront ...
Dynamic Content Acceleration: Lightning Fast Web Apps with Amazon CloudFront ...
 
Eric Proegler Oredev Performance Testing in New Contexts
Eric Proegler Oredev Performance Testing in New ContextsEric Proegler Oredev Performance Testing in New Contexts
Eric Proegler Oredev Performance Testing in New Contexts
 
Website performance optimization QA
Website performance optimization QAWebsite performance optimization QA
Website performance optimization QA
 
Correlate Log Data with Business Metrics Like a Jedi
Correlate Log Data with Business Metrics Like a JediCorrelate Log Data with Business Metrics Like a Jedi
Correlate Log Data with Business Metrics Like a Jedi
 
Engineering Machine Learning Data Pipelines Series: Streaming New Data as It ...
Engineering Machine Learning Data Pipelines Series: Streaming New Data as It ...Engineering Machine Learning Data Pipelines Series: Streaming New Data as It ...
Engineering Machine Learning Data Pipelines Series: Streaming New Data as It ...
 
Building Scalable Big Data Infrastructure Using Open Source Software Presenta...
Building Scalable Big Data Infrastructure Using Open Source Software Presenta...Building Scalable Big Data Infrastructure Using Open Source Software Presenta...
Building Scalable Big Data Infrastructure Using Open Source Software Presenta...
 

Más de Fastly

Revisiting HTTP/2
Revisiting HTTP/2Revisiting HTTP/2
Revisiting HTTP/2Fastly
 
Altitude San Francisco 2018: Preparing for Video Streaming Events at Scale
Altitude San Francisco 2018: Preparing for Video Streaming Events at ScaleAltitude San Francisco 2018: Preparing for Video Streaming Events at Scale
Altitude San Francisco 2018: Preparing for Video Streaming Events at ScaleFastly
 
Altitude San Francisco 2018: Building the Souther Hemisphere of the Internet
Altitude San Francisco 2018: Building the Souther Hemisphere of the InternetAltitude San Francisco 2018: Building the Souther Hemisphere of the Internet
Altitude San Francisco 2018: Building the Souther Hemisphere of the InternetFastly
 
Altitude San Francisco 2018: The World Cup Stream
Altitude San Francisco 2018: The World Cup StreamAltitude San Francisco 2018: The World Cup Stream
Altitude San Francisco 2018: The World Cup StreamFastly
 
Altitude San Francisco 2018: We Own Our Destiny
Altitude San Francisco 2018: We Own Our DestinyAltitude San Francisco 2018: We Own Our Destiny
Altitude San Francisco 2018: We Own Our DestinyFastly
 
Altitude San Francisco 2018: Scale and Stability at the Edge with 1.4 Billion...
Altitude San Francisco 2018: Scale and Stability at the Edge with 1.4 Billion...Altitude San Francisco 2018: Scale and Stability at the Edge with 1.4 Billion...
Altitude San Francisco 2018: Scale and Stability at the Edge with 1.4 Billion...Fastly
 
Altitude San Francisco 2018: Moving Off the Monolith: A Seamless Migration
Altitude San Francisco 2018: Moving Off the Monolith: A Seamless MigrationAltitude San Francisco 2018: Moving Off the Monolith: A Seamless Migration
Altitude San Francisco 2018: Moving Off the Monolith: A Seamless MigrationFastly
 
Altitude San Francisco 2018: Bringing TLS to GitHub Pages
Altitude San Francisco 2018: Bringing TLS to GitHub PagesAltitude San Francisco 2018: Bringing TLS to GitHub Pages
Altitude San Francisco 2018: Bringing TLS to GitHub PagesFastly
 
Altitude San Francisco 2018: HTTP Invalidation Workshop
Altitude San Francisco 2018: HTTP Invalidation WorkshopAltitude San Francisco 2018: HTTP Invalidation Workshop
Altitude San Francisco 2018: HTTP Invalidation WorkshopFastly
 
Altitude San Francisco 2018: HTTP/2 Tales: Discovery and Woe
Altitude San Francisco 2018: HTTP/2 Tales: Discovery and WoeAltitude San Francisco 2018: HTTP/2 Tales: Discovery and Woe
Altitude San Francisco 2018: HTTP/2 Tales: Discovery and WoeFastly
 
Altitude San Francisco 2018: How Magento moved to the cloud while maintaining...
Altitude San Francisco 2018: How Magento moved to the cloud while maintaining...Altitude San Francisco 2018: How Magento moved to the cloud while maintaining...
Altitude San Francisco 2018: How Magento moved to the cloud while maintaining...Fastly
 
Altitude San Francisco 2018: Scaling Ethereum to 10B requests per day
Altitude San Francisco 2018: Scaling Ethereum to 10B requests per dayAltitude San Francisco 2018: Scaling Ethereum to 10B requests per day
Altitude San Francisco 2018: Scaling Ethereum to 10B requests per dayFastly
 
Altitude San Francisco 2018: Authentication at the Edge
Altitude San Francisco 2018: Authentication at the EdgeAltitude San Francisco 2018: Authentication at the Edge
Altitude San Francisco 2018: Authentication at the EdgeFastly
 
Altitude San Francisco 2018: WebAssembly Tools & Applications
Altitude San Francisco 2018: WebAssembly Tools & ApplicationsAltitude San Francisco 2018: WebAssembly Tools & Applications
Altitude San Francisco 2018: WebAssembly Tools & ApplicationsFastly
 
Altitude San Francisco 2018: Testing with Fastly Workshop
Altitude San Francisco 2018: Testing with Fastly WorkshopAltitude San Francisco 2018: Testing with Fastly Workshop
Altitude San Francisco 2018: Testing with Fastly WorkshopFastly
 
Altitude San Francisco 2018: Fastly Purge Control at the USA TODAY NETWORK
Altitude San Francisco 2018: Fastly Purge Control at the USA TODAY NETWORKAltitude San Francisco 2018: Fastly Purge Control at the USA TODAY NETWORK
Altitude San Francisco 2018: Fastly Purge Control at the USA TODAY NETWORKFastly
 
Altitude San Francisco 2018: WAF Workshop
Altitude San Francisco 2018: WAF WorkshopAltitude San Francisco 2018: WAF Workshop
Altitude San Francisco 2018: WAF WorkshopFastly
 
Altitude San Francisco 2018: Logging at the Edge
Altitude San Francisco 2018: Logging at the Edge Altitude San Francisco 2018: Logging at the Edge
Altitude San Francisco 2018: Logging at the Edge Fastly
 
Altitude San Francisco 2018: Video Workshop Docs
Altitude San Francisco 2018: Video Workshop DocsAltitude San Francisco 2018: Video Workshop Docs
Altitude San Francisco 2018: Video Workshop DocsFastly
 
Altitude San Francisco 2018: Programming the Edge
Altitude San Francisco 2018: Programming the EdgeAltitude San Francisco 2018: Programming the Edge
Altitude San Francisco 2018: Programming the EdgeFastly
 

Más de Fastly (20)

Revisiting HTTP/2
Revisiting HTTP/2Revisiting HTTP/2
Revisiting HTTP/2
 
Altitude San Francisco 2018: Preparing for Video Streaming Events at Scale
Altitude San Francisco 2018: Preparing for Video Streaming Events at ScaleAltitude San Francisco 2018: Preparing for Video Streaming Events at Scale
Altitude San Francisco 2018: Preparing for Video Streaming Events at Scale
 
Altitude San Francisco 2018: Building the Souther Hemisphere of the Internet
Altitude San Francisco 2018: Building the Souther Hemisphere of the InternetAltitude San Francisco 2018: Building the Souther Hemisphere of the Internet
Altitude San Francisco 2018: Building the Souther Hemisphere of the Internet
 
Altitude San Francisco 2018: The World Cup Stream
Altitude San Francisco 2018: The World Cup StreamAltitude San Francisco 2018: The World Cup Stream
Altitude San Francisco 2018: The World Cup Stream
 
Altitude San Francisco 2018: We Own Our Destiny
Altitude San Francisco 2018: We Own Our DestinyAltitude San Francisco 2018: We Own Our Destiny
Altitude San Francisco 2018: We Own Our Destiny
 
Altitude San Francisco 2018: Scale and Stability at the Edge with 1.4 Billion...
Altitude San Francisco 2018: Scale and Stability at the Edge with 1.4 Billion...Altitude San Francisco 2018: Scale and Stability at the Edge with 1.4 Billion...
Altitude San Francisco 2018: Scale and Stability at the Edge with 1.4 Billion...
 
Altitude San Francisco 2018: Moving Off the Monolith: A Seamless Migration
Altitude San Francisco 2018: Moving Off the Monolith: A Seamless MigrationAltitude San Francisco 2018: Moving Off the Monolith: A Seamless Migration
Altitude San Francisco 2018: Moving Off the Monolith: A Seamless Migration
 
Altitude San Francisco 2018: Bringing TLS to GitHub Pages
Altitude San Francisco 2018: Bringing TLS to GitHub PagesAltitude San Francisco 2018: Bringing TLS to GitHub Pages
Altitude San Francisco 2018: Bringing TLS to GitHub Pages
 
Altitude San Francisco 2018: HTTP Invalidation Workshop
Altitude San Francisco 2018: HTTP Invalidation WorkshopAltitude San Francisco 2018: HTTP Invalidation Workshop
Altitude San Francisco 2018: HTTP Invalidation Workshop
 
Altitude San Francisco 2018: HTTP/2 Tales: Discovery and Woe
Altitude San Francisco 2018: HTTP/2 Tales: Discovery and WoeAltitude San Francisco 2018: HTTP/2 Tales: Discovery and Woe
Altitude San Francisco 2018: HTTP/2 Tales: Discovery and Woe
 
Altitude San Francisco 2018: How Magento moved to the cloud while maintaining...
Altitude San Francisco 2018: How Magento moved to the cloud while maintaining...Altitude San Francisco 2018: How Magento moved to the cloud while maintaining...
Altitude San Francisco 2018: How Magento moved to the cloud while maintaining...
 
Altitude San Francisco 2018: Scaling Ethereum to 10B requests per day
Altitude San Francisco 2018: Scaling Ethereum to 10B requests per dayAltitude San Francisco 2018: Scaling Ethereum to 10B requests per day
Altitude San Francisco 2018: Scaling Ethereum to 10B requests per day
 
Altitude San Francisco 2018: Authentication at the Edge
Altitude San Francisco 2018: Authentication at the EdgeAltitude San Francisco 2018: Authentication at the Edge
Altitude San Francisco 2018: Authentication at the Edge
 
Altitude San Francisco 2018: WebAssembly Tools & Applications
Altitude San Francisco 2018: WebAssembly Tools & ApplicationsAltitude San Francisco 2018: WebAssembly Tools & Applications
Altitude San Francisco 2018: WebAssembly Tools & Applications
 
Altitude San Francisco 2018: Testing with Fastly Workshop
Altitude San Francisco 2018: Testing with Fastly WorkshopAltitude San Francisco 2018: Testing with Fastly Workshop
Altitude San Francisco 2018: Testing with Fastly Workshop
 
Altitude San Francisco 2018: Fastly Purge Control at the USA TODAY NETWORK
Altitude San Francisco 2018: Fastly Purge Control at the USA TODAY NETWORKAltitude San Francisco 2018: Fastly Purge Control at the USA TODAY NETWORK
Altitude San Francisco 2018: Fastly Purge Control at the USA TODAY NETWORK
 
Altitude San Francisco 2018: WAF Workshop
Altitude San Francisco 2018: WAF WorkshopAltitude San Francisco 2018: WAF Workshop
Altitude San Francisco 2018: WAF Workshop
 
Altitude San Francisco 2018: Logging at the Edge
Altitude San Francisco 2018: Logging at the Edge Altitude San Francisco 2018: Logging at the Edge
Altitude San Francisco 2018: Logging at the Edge
 
Altitude San Francisco 2018: Video Workshop Docs
Altitude San Francisco 2018: Video Workshop DocsAltitude San Francisco 2018: Video Workshop Docs
Altitude San Francisco 2018: Video Workshop Docs
 
Altitude San Francisco 2018: Programming the Edge
Altitude San Francisco 2018: Programming the EdgeAltitude San Francisco 2018: Programming the Edge
Altitude San Francisco 2018: Programming the Edge
 

Último

Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...
Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...
Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...SUHANI PANDEY
 
Katraj ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For S...
Katraj ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For S...Katraj ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For S...
Katraj ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For S...tanu pandey
 
Enjoy Night⚡Call Girls Samalka Delhi >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Samalka Delhi >༒8448380779 Escort ServiceEnjoy Night⚡Call Girls Samalka Delhi >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Samalka Delhi >༒8448380779 Escort ServiceDelhi Call girls
 
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Bookingdharasingh5698
 
Dubai Call Girls Milky O525547819 Call Girls Dubai Soft Dating
Dubai Call Girls Milky O525547819 Call Girls Dubai Soft DatingDubai Call Girls Milky O525547819 Call Girls Dubai Soft Dating
Dubai Call Girls Milky O525547819 Call Girls Dubai Soft Datingkojalkojal131
 
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableSeo
 
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)Delhi Call girls
 
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...Delhi Call girls
 
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445ruhi
 
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRLLucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRLimonikaupta
 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersDamian Radcliffe
 
Call Now ☎ 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.soniya singh
 
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...nilamkumrai
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtrahman018755
 
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...SUHANI PANDEY
 
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...SUHANI PANDEY
 
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...tanu pandey
 

Último (20)

Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...
Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...
Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...
 
Russian Call Girls in %(+971524965298 )# Call Girls in Dubai
Russian Call Girls in %(+971524965298  )#  Call Girls in DubaiRussian Call Girls in %(+971524965298  )#  Call Girls in Dubai
Russian Call Girls in %(+971524965298 )# Call Girls in Dubai
 
Katraj ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For S...
Katraj ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For S...Katraj ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For S...
Katraj ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For S...
 
VVVIP Call Girls In Connaught Place ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Connaught Place ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...VVVIP Call Girls In Connaught Place ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Connaught Place ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
 
Enjoy Night⚡Call Girls Samalka Delhi >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Samalka Delhi >༒8448380779 Escort ServiceEnjoy Night⚡Call Girls Samalka Delhi >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Samalka Delhi >༒8448380779 Escort Service
 
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
 
Dubai Call Girls Milky O525547819 Call Girls Dubai Soft Dating
Dubai Call Girls Milky O525547819 Call Girls Dubai Soft DatingDubai Call Girls Milky O525547819 Call Girls Dubai Soft Dating
Dubai Call Girls Milky O525547819 Call Girls Dubai Soft Dating
 
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
 
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
 
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
 
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
 
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRLLucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
 
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
 
Call Now ☎ 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.
 
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirt
 
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
 
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
 
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
 

Measuring CDN performance and why you're doing it wrong

  • 1. Measuring  CDN  Performance   Hooman  Beheshti,  VP  Technology  
  • 2. Why  this  matters   •  Performance  is  one  of  the  main  reasons  we  use  a   CDN   •  Seems  easy  to  measure,  but  isn’t   •  Performance  is  an  easy  way  to  comparison  shop   •  Nuanced   •  Metric  overload  
  • 3. Common  mistakes   •  Getting  lost  in  data   •  Focusing  on  one  thing  and  one  thing  alone   – We  like  numbers!   •  Forgetting  about  our  applications   •  Letting  vendors  influence  us     – (I’m  fully  aware  of  the  irony!)  
  • 4. Goals   •  Share  measurement  experiences   •  What  does  the  measurement  landscape  look  like   •  Help  guide  towards  good  testing  plan   –  Avoid  pitfalls  
  • 6.
  • 7. CDNs:  delivery  platforms   •  We  won’t  talk  about   – Extra  stuff:  security,  GSLB,  TLS  offload,  etc   – We  also  won’t  talk  about  page-­‐level  optimizations   •  We  will  focus  on  the  delivery  side   – Delivering  HTTP  objects  
  • 8. Delivery:  static/cached  objects   Client   CDN  Node   Origin  
  • 10. What  we’ll  be  focusing  on   •  How  we  measure   •  Metrics  to  measure   •  What  to  measure   •  Some  gotchas,  misconceptions,  and  common   mistakes  
  • 11. Measurement  Techniques   (how  we  measure)  
  • 12. Measurement  techniques   •  Pretend  Users   –  Synthetic  tests   –  Not  actual  users   •  Real  Users   –  In  the  browser   –  Actual  users  
  • 14. Synthetic  testing   •  Usually  a  large  network  of  test  nodes  all  over   the  globe   •  Highly  scalable,  can  do  lots  of  tests  at  once   •  Many  vendors  that  have  this  model   – Examples:  Catchpoint,  Dynatrace(Gomez),   Keynote,  Pingdom,  etc  
  • 15. Synthetic  testing   •  Built  to  do  full  performance  and  availability  testing   –  Lots  of  “monitors”  –  emulating  what  real  users  do   –  DNS,  Traceroute,  Ping,  Streaming,  Mobile   –  HTTP   •  Object   •  Browser   •  Transactions/Flows     •  Tests  set  up  with  some  frequency  to  repeatedly  test  things   –  Aggregates  reported  
  • 16. Backbone  nodes   •  Test  machines  sitting  in  datacenters  all  around  the  globe   •  Terrible  indicators  of  raw  performance   –  No  latency   –  Infinite  bandwidth   •  But  really  good  at:   –  Availability   –  Scale   –  Backend  problems   –  Global  reach  
  • 18. Backbone  nodes   •  Test  machines  sitting  in  datacenters  all  around  the  globe   •  Terrible  indicators  of  raw  performance   –  No  latency   –  Infinite  bandwidth   •  But  really  good  at:   –  Availability   –  Scale   –  Backend  problems   –  Global  reach  
  • 19. Last  mile  nodes   •  Test  machines  sitting  behind  a  real  home-­‐like   internet  connection   •  Much  better  at  reporting  what  you  can  expect   from  users,  but  sometimes  unreliable   •  Also  not  as  dense  in  deployment  
  • 20. backbone   last  mile  
  • 21. Synthetic  testing   •  Pros   –  Geographic  distribution   –  Lots  of  options  for  testing   –  Really  good  for  on-­‐the-­‐spot  troubleshooting   –  Last-­‐mile  nodes  can  be  pretty  good  proxies  for   performance   •  Cons   –  Not  real  users!   –  Backbone  nodes  can  be  misleading  
  • 23. RUM   •  Use  javascript  to  collect  timing  metrics   •  Can  collect  lots  of  things  through  browser   APIs   – Page  metrics,  asset  metrics,  user-­‐defined  metrics  
  • 24. Use  test  assets   •  Use  this  model  to  initiate  tests  in  the  browser   •  Some  vendors:   – Cedexis,  TurboBytes,  CloudHarmony,  more…   – Usually,  this  isn’t  their  business,  but  the  data   drives  their  main  business  objectives   •  You  can  build  this  yourself  too  
  • 25. Use  real  assets  in  the  page   •  Collect  timings  from  actual  objects   –  Resource  timing   •  Vendors   –  SOASTA,  New  Relic,  most  synthetic  vendors   –  Boomerang  (open  source)   –  Google  Analytics  User  Timings  
  • 26. DATA,  DATA,  DATA   •  For  either  RUM  technique,  we  need  A  LOT  of   data   •  Too  many  variances   •  Most  vendors  don’t  use  averages   –  Medians  and  percentiles  
  • 27. Real  user  measurements   •  Pros   –  Real  users,  real  browsers,  real  world  conditions   –  If  you  use  your  own  content,  could  be  close  to  what   your  users  experience   –  With  enough  data,  great  for  granular  analysis   •  Cons   –  We  need  a  lot  of  data   –  If  you  do  it  yourself,  data  infrastructures  aren’t  trivial  
  • 30. Client   Server   1  x  RTT    
  • 31. Client   Server   DNS   DNS  
  • 32. TCP   Client   Server   DNS   DNS  
  • 33. TCP   Client   Server   DNS   DNS   (TLS)  
  • 34. TCP   Client   Server   DNS   DNS   (TLS)   HTTP  
  • 35. TCP   Client   Server   DNS   DNS   (TLS)   HTTP   Download  
  • 36. DNS   TCP   (TLS)   TTFB   Download  (TTLB-­‐TTFB)   Time  
  • 37. DNS   TCP   (TLS)   TTFB   Download  (TTLB-­‐TTFB)   Time   DNS   RTT  to  DNS  server,  DNS  iterations,  DNS  caching  and    TTLs  
  • 38. DNS   TCP   (TLS)   TTFB   Download  (TTLB-­‐TTFB)   Time   DNS   TCP   RTT  to  DNS  server,  DNS  iterations,  DNS  caching  and    TTLs   RTT  to  cache  server  (CDN  footprint  &  routing  algorithms)  
  • 39. DNS   TCP   (TLS)   TTFB   Download  (TTLB-­‐TTFB)   Time   DNS   TCP   (TLS)   RTT  to  DNS  server,  DNS  iterations,  DNS  caching  and    TTLs   RTT  to  cache  server  (CDN  footprint  &  routing  algorithms)   RTT  to  cache  server  (or  RTTs  depending  on  TLS  False  Start),   efficiency  of  TLS  engine  
  • 40. DNS   TCP   (TLS)   TTFB   Download  (TTLB-­‐TTFB)   Time   DNS   TCP   (TLS)   TTFB   RTT  to  DNS  server,  DNS  iterations,  DNS  caching  and    TTLs   RTT  to  cache  server  (CDN  footprint  &  routing  algorithms)   RTT  to  cache  server  (or  RTTs  depending  on  TLS  False  Start),   efficiency  of  TLS  engine   RTT  to  where  the  object  is  stored  +  storage  efficiency     (different  for  requests  to  origin);  lower  bound  =  network  RTT  
  • 41. DNS   TCP   (TLS)   TTFB   Download  (TTLB-­‐TTFB)   Time   DNS   TCP   (TLS)   TTFB   TTLB-­‐TTFB   RTT  to  DNS  server,  DNS  iterations,  DNS  caching  and    TTLs   RTT  to  cache  server  (CDN  footprint  &  routing  algorithms)   RTT  to  cache  server  (or  RTTs  depending  on  TLS  False  Start),   efficiency  of  TLS  engine   RTT  to  where  the  object  is  stored  +  storage  efficiency     (different  for  requests  to  origin);  lower  bound  =  network  RTT   Bandwidth,  congestion  avoidance  algorithms  (and  RTT!)  
  • 42. Core  object  metrics   •  Not  every  request  experiences  every  metric:   –  DNS:  once  per  domain   –  TCP/TLS  once  per  connection   –  HTTP/Download  for  every  object  (not  already  in   browser  cache)   •  All  techniques/tools  measure  and  report  these   metrics  
  • 45. object  metrics       or     page  metrics  
  • 46.
  • 47.
  • 48. Download:  15Mbps     Upload:  5Mbps     Latency:  10  ms,  25  ms  
  • 49. 10  msec   25  msec  
  • 50. 10  msec   25  msec  
  • 51. onload   Speed  Index   Start  Render   10  msec   25  msec  
  • 52. What  the…???   •  We  always  assume  “all  things  equal”   •  Too  many  factors  affect  page  load  time   –  3rd  parties  (sometimes  varying),  content  form  origin,   layout,  JS  execution,  etc   •  Too  much  variance  
  • 53. 3rd  parties   Source:  httparchive.org  
  • 54. To  be  clear…   •  Always  use  webpagetest  (or  something  like  it)  to  understand  your   application’s  performance  profile   •  Continue  to  monitor  application  performance,  and  always  spot   check   •  Be  extremely  careful  when  using  it  to  gage/compare    CDN   performance,  it  can  mislead  you   –  If  using  RUM  to  measure  page  metrics,  with  lots  of  data,  things   become  a  little  more  meaningful  (data  volume  handles  variance)  
  • 55. What  to  measure   (plus  the  right  metrics)  
  • 56. Most  commonly…   •  Pick  a  “normal  object”   –  e.g.  some  object  on  the  home  page   •  Set  up  testing  from  multiple  places  (usually  with  a   synthetic  vendor)   –  And  hopefully  not  backbone!   •  Compare  either  overall  load  time,  or  some  object  metrics  
  • 59. Web  application:  objects   •  Ratio  of  objects  coming  from  CDN  cache  vs   those  coming  from  origin  (through  CDN)   should  determine  objects  to  test   •  If  HTML  is  from  origin,  we  must  measure  it   – Essential  to  critical  page  metrics  
  • 61. Web  application:  metrics   •  On  any  page   –  DNS  queries  only  happen  a  small  number  of  times   –  6  TCP  connections  per  domain   –  Many  many  many  HTTP  fetches   •  Core  metrics   –  TTFB   –  Download  (TTLB-­‐TTFB)  if  important  large  objects   –  Should  have  a  good  idea  of  DNS/TCP/TLS,  but  less  critical  
  • 62. Web  application   •  If  CDN  only  for  static/cacheable  objects:   –  One  or  two  representative  assets     –  TTFB  and  maybe  download  most  important   Client   CDN  Node  
  • 64. Web  application   •  If  CDN  also  for  whole  site   –  Sample  of  key  HTML  pages,  delivered  from  origin   –  TTFB  will  show  efficiency  of  routing  (and  connection   management)    to  origin   –  TTLB  will  show  efficiency  of  delivery   Web  Server  Client   CDN  Node  
  • 65. Web  application   •  If  CDN  also  for  whole  site   –  Sample  of  key  HTML  pages,  delivered  from  origin   –  TTFB  will  show  efficiency  of  routing  (and  connection   management)    to  origin   –  TTLB  will  show  efficiency  of  delivery   Web  Server  Client   CDN  Node   CDN  Node  
  • 67. Software  download:  objects   •  Pick  a  standard  file  that  users  will  be   downloading   –  Representative  file  size   •  Also  pick  something  you  expect  to  be  on  the   CDN  but  not  fetched  all  that  often   –  More  on  this  later….  
  • 68. Software  download:  metrics   •  Ratio  of    TCP-­‐to-­‐HTTP  is  closer  to  1-­‐1   –  Especially  if  you  have  a  dedicated  download  domain   –  Could  mean  the  same  for  DNS   •  For  large  files,  we  care  about  download  time   •  Core  metrics:   –  TTFB  (+  TCP  and  maybe  DNS,  if  applicable)   –  TTLB   –  TTLB-­‐TTFB  will  usually  be  a  larger  component  
  • 70. Download  time   •  Careful  about  where  you  expect  this  download  to  happen  in  the   lifetime  of  a  TCP  connection   •  In  the  beginning  of  the  connection   –  Function  of  init_cwnd  and  TCP  slow  start  (and  RTT)     •  Later  in  the  connection   –  Function  of  congestion  avoidance  and  bandwidth   •  Large  files  will  experience  both  
  • 72.
  • 73. Download  time   •  Careful  about  where  you  expect  this  download  to  happen  in  the   lifetime  of  a  TCP  connection   •  In  the  beginning  of  the  connection   –  Function  of  init_cwnd  and  TCP  slow  start  (and  RTT)     •  Later  in  the  connection   –  Function  of  congestion  avoidance  and  bandwidth   •  Large  files  will  experience  both  
  • 75. Cache  hit  ratio:  traditional  calculation   1  -­‐     Requests  to  Origin     Total  Requests  
  • 77. Origin   Cache          
  • 78. TCP   Origin   Cache          
  • 79. HTTP   Origin   Cache          
  • 80. Origin   Cache           HTTP  
  • 81. Origin   Cache           HTTP  
  • 82. Origin   Cache           HTTP  
  • 83. Origin   Cache           HTTP  
  • 84. Origin   Cache           HOT   COLD  
  • 85. Origin   Cache           cache  “hit”  
  • 86. Cache  hit  ratio:  traditional  calculation   1  -­‐     Requests  to  Origin     Total  Requests  
  • 87. Isn’t  this  better?   Hits   Total  Requests   @edge  
  • 88. Isn’t  this  better?   Hits   Hits  +  Misses   @edge  
  • 89. Cache  hit  ratio   vs.  1  -­‐    Requests  to  Origin     Total  Requests   Hits   Hits  +  Misses   @edge  
  • 90. Cache  hit  ratio   vs.  1  -­‐    Requests  to  Origin     Total  Requests   Hits   Hits  +  Misses   @edge   Offload  
  • 91. Cache  hit  ratio   vs.  1  -­‐    Requests  to  Origin     Total  Requests   Hits   Hits  +  Misses   @edge   Offload   Performance  
  • 92. Effect  on  long  tail  content  
  • 93. Effect  on  long  tail  content   (long  tail:  Cacheable  but  seldom  fetched)  
  • 94. Popular   Medium  Tail  (1hr)   Long  tail    (6hr)                  
  • 95. Popular   Medium  Tail  (1hr)   Long  tail    (6hr)                   Connect  (median)   Popular   14msec   1hr  Tail   15msec   6hr  Tail   16msec  
  • 96. Popular   Medium  Tail  (1hr)   Long  tail    (6hr)                   Connect  (median)   Popular   14msec   1hr  Tail   15msec   6hr  Tail   16msec   6,400+  measurements   77,000+  measurements   38,000+  measurements  
  • 97. Popular   Medium  Tail  (1hr)   Long  tail    (6hr)   Connect  (median)   Popular   14msec   1hr  Tail   15msec   6hr  Tail   16msec   6,400+  measurements   77,000+  measurements   38,000+  measurements  
  • 98. Popular   Medium  Tail  (1hr)   Long  tail    (6hr)   Connect  (median)   Wait  (median)   Popular   14msec   19msec   1hr  Tail   15msec   26msec   6hr  Tail   16msec   32msec   6,400+  measurements   77,000+  measurements   38,000+  measurements  
  • 99. Popular   Medium  Tail  (1hr)   Long  tail    (6hr)   Isn’t  this  better?  
  • 101. Does  all  this  really  matter?  
  • 102. Does  all  this  really  matter?   Yes,  but…  
  • 103.
  • 104.
  • 105. The  bigger  picture   •  It’s  really  easy  to  lock  in  on  a  metric   •  Performance  absolutely  matters   •  True  performance  isn’t  always  as  easy  to   measure  
  • 106. Storage  model  and  long  tail  content  
  • 107. Cache  hit  ratios  for  offload  and   performance  
  • 109. HTTP  vs  TLS  footprint  
  • 110. Caching  something  you  didn’t  think  you   could  cache  
  • 111. Serve  stale  content  if  necessary  
  • 112. Key  takeaways   •  Everything  is  application-­‐dependent   –  Evaluate  how  your  application  works  and  what  impacts  performance   the  most   •  Don’t  get  locked  into  a  single  number   •  Always  know  your  application  performance  and  bottlenecks   •  Be  mindful  of  the  bigger  picture!