measured availability - sanjay singh - devops bangalore meetup march 28th 2015

11
Measured Availability and Performance Sanjay Singh [email protected]

Upload: devopsbangalore

Post on 19-Jul-2015

156 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Measured availability - Sanjay Singh - DevOps Bangalore meetup March 28th 2015

Measured  Availability  and  Performance  

   

Sanjay  Singh  [email protected]  

Page 2: Measured availability - Sanjay Singh - DevOps Bangalore meetup March 28th 2015

Agenda  

•  FCI  –  Failed  Customer  Interac@on  •  TP  –  Top  Percen@le  •  RUM  •  RUM  with  SPA  

Page 3: Measured availability - Sanjay Singh - DevOps Bangalore meetup March 28th 2015

Availability  and  Down@me  

Page 4: Measured availability - Sanjay Singh - DevOps Bangalore meetup March 28th 2015

FCI  

•  FCI  is  Failed  Customer  Interac@on  which  is  measured  for  a  par@cular  page/workflow.  – A  customer  interac@on  can  be  page  view,  form  submission,  etc.  In  HTTP  terms,  customer’s  interac@ons  are  GET/POST  request.  

–  If  the  page  response  is  not  as  per  the  expected  behavior  of  the  applica@on,  then  it’s  a  failed  customer  interac@on.  

Page 5: Measured availability - Sanjay Singh - DevOps Bangalore meetup March 28th 2015

How  is  FCI  calculated  ?  

•  FCI  is  calculated  on  per  page  basis.  If  page  execu@on  is  not  as  per  the  expected  behavior,  then  it  is  counted  as  failure.  

•  Iden@fy  all  failure  cases  and  log  it  appropriately  on  the  server  with  user  session’s  info.  

Page 6: Measured availability - Sanjay Singh - DevOps Bangalore meetup March 28th 2015

Performance  

•  As  per  Google  –  

•  Increasing  web  search  latency  100  to  400  ms  reduces  the  daily  number  of  searches  per  user  by  0.2%  to  0.6%.      

•  Users  do  fewer  searches  the  longer  they  are  exposed.    

•  For  longer  delays,  the  loss  of  searches  persists  even  aYer  latency  returns  to  previous  levels.  

Page 7: Measured availability - Sanjay Singh - DevOps Bangalore meetup March 28th 2015

Performance  Measurement  

•  Top  Percen-le  (TP)  is  a  method  to  find  minimum  @me    in  which  (X)  amount  of  requests  were  served.  – Example:  If  the  TP90  of  a  page  is  2  sec,  then  it  means  90%  of  the  requests  were  served  within  2  seconds.  

Page 8: Measured availability - Sanjay Singh - DevOps Bangalore meetup March 28th 2015

RUM  with  SPA  •  What  is  RUM?  

–  RUM  =  Real  User  Monitoring,  is  the  actual  measure  of  how  long  a  page  took  to  render  and  become  usable  for  a  real  user.  It  is  the  measure  of  a  page’s  speed  by  measuring  the  @me  it  takes  for  "PAGE  READY"  state,  and  not  only  the  @me  it  took  for  data  to  be  downloaded.  

•  Web  is  moving  towards  Single  Page  Architecture  

•  Most  of  Exis@ng  tools  stop  at  the  onLoad()  and  are  not  sufficient  to  get  the  real  measure  of  the  end  user  performance  and  cannot  tell  the  PAGE  READY  state  

•  SPA  world  -­‐  most  of  the  processing  starts  when  onLoad()  ends  

•  Need  to  measure  processing  @me  for  various  user  ac@ons  heavy  on  the  client  side  

Page 9: Measured availability - Sanjay Singh - DevOps Bangalore meetup March 28th 2015

Measured  Availability  using  NewRelic  RUM  

9  

Web  Servers  With  NewRelic  agents  

MA  reads  metrics  from  NewRelic  insights  

NewRelic  Plugin  sends  page  load  9me,  url,  success  code  to  NewRelic  servers  

Customer  interac9ons  with  Web  servers.  

Web  servers  respond  to  customer’s  requests  along  with  NewRelic  RUM  plugin.  

Measured  Availability  Dashboard  

Customer  Browser  

Page 10: Measured availability - Sanjay Singh - DevOps Bangalore meetup March 28th 2015

Measured  Availability  Formulae  

         

10  

NOTE:   “Outage”   is   number   of   transac@ons   that   were   impacted   during   planned   or  unplanned  down@me.  

MA(%) = (TotalTransactions− (ServerErrors+ SlowTrasanctions+Outage))TotalTransactions

×100

Page 11: Measured availability - Sanjay Singh - DevOps Bangalore meetup March 28th 2015

Thank  You!  

[email protected]  +91.96633.72266