SlideShare a Scribd company logo
1 of 15
Download to read offline
 
	
  
	
  
	
  
	
  
T14	
  
Performance	
  Testing	
  
10/5/17	
  13:30	
  
	
  
	
  
	
  
	
  
A	
  Three-­‐Tier	
  Load	
  Testing	
  Program	
  
Saved	
  Our	
  Bacon	
  
	
  
Presented	
  by:	
  
	
  
Melissa	
  Chawla	
  
	
  Guidewire	
  
	
  
Brought	
  to	
  you	
  by:	
  	
  
	
  	
  
	
  
	
  
	
  
	
  
	
  
350	
  Corporate	
  Way,	
  Suite	
  400,	
  Orange	
  Park,	
  FL	
  32073	
  	
  
888-­‐-­‐-­‐268-­‐-­‐-­‐8770	
  ·∙·∙	
  904-­‐-­‐-­‐278-­‐-­‐-­‐0524	
  -­‐	
  info@techwell.com	
  -­‐	
  http://www.starwest.techwell.com/	
  	
  	
  
	
  
	
  	
  
	
  
 
Melissa	
  Chawla	
  
Guidewire	
  
	
  
Melissa	
  Chawla	
  manages	
  a	
  software	
  development	
  team	
  at	
  Guidewire.	
  For	
  the	
  
previous	
  five	
  years,	
  she	
  managed	
  the	
  test	
  infrastructure	
  and	
  performance	
  
engineering	
  teams	
  at	
  Shutterfly.	
  Prior	
  to	
  that,	
  Melissa	
  held	
  software	
  
development	
  positions	
  at	
  startups	
  in	
  the	
  high	
  performance	
  computing	
  storage	
  
and	
  development	
  tools	
  software	
  industries.	
  She	
  worked	
  in	
  the	
  Tcl/Tk	
  language	
  
development	
  team	
  at	
  Sun	
  Labs,	
  contributing	
  to	
  several	
  open	
  source	
  projects	
  
around	
  Tcl.	
  Her	
  favorite	
  sports	
  are	
  downhill	
  skiing	
  and	
  Ultimate	
  Frisbee.	
  Learn	
  
more	
  about	
  Melissa	
  at	
  LinkedIn.	
  
	
  
1	
  
	
  
	
  
The	
  Resistance.	
  
How	
  a	
  3	
  Tiered	
  Load	
  Tes.ng	
  Program	
  
Saves	
  Shu7erfly’s	
  Bacon	
  
STARTWEST	
  
Conference	
  
October	
  5,	
  2017	
  
By	
  Melissa	
  Chawla	
  
2	
  
•  Goal	
  of	
  performance	
  tesAng	
  
•  ShuDerfly’s	
  ecosystem	
  
•  3	
  Tiers	
  of	
  performance	
  tesAng	
  
o  Goal,	
  tesAng	
  method,	
  value	
  added	
  &	
  challenges	
  faced	
  
•  The	
  Journey	
  
o  EvoluAon	
  of	
  3	
  perf	
  tesAng	
  Aers	
  
o  Steps	
  to	
  increase	
  perf	
  tesAng	
  return	
  on	
  investment	
  
o  CreaAng	
  a	
  performance	
  culture	
  
Agenda	
  
2	
  
3	
  
1.  Improve	
  web	
  page	
  speed	
  during	
  peak	
  load	
  
2.  Avoid	
  preventable	
  site	
  outages	
  
Main	
  Performance	
  Goal	
  for	
  ShuDerfly	
  
4	
  
•  ApplicaAon	
  SoSware	
  
o  Ecommerce	
  +	
  photo	
  personalizaAon/management	
  
o  Main	
  website	
  +	
  naAve	
  iPhone,	
  iPad	
  &	
  android	
  apps	
  
o  Diverse	
  soSware	
  plaXorm	
  due	
  to	
  Ame	
  &	
  acquisiAons	
  
•  SoSware	
  Layers	
  
o  Proxy,	
  authenAcaAon	
  &	
  caching	
  layers	
  
o  Third-­‐party	
  dependencies	
  
•  CDN,	
  Tax	
  &	
  payment	
  services,	
  beacons,	
  etc.	
  
•  Hardware	
  PlaXorm	
  
o  Datacenter	
  
•  Switches,	
  load	
  balancers,	
  400+	
  servers	
  
o  Cloud	
  (AWS)	
  
•  cloud  ≠ 𝑠𝑐𝑎𝑙𝑒	
  
ShuDerfly’s	
  Complex	
  Layered	
  Ecosystem	
  
3	
  
5	
  
ShuDerfly’s	
  SoSware	
  ApplicaAon	
  Layers	
  
6	
  
1.  Scalability	
  Design	
  Review	
  
2.  ConAnuous	
  Unit	
  Load	
  TesAng	
  
3.  End-­‐to-­‐end	
  ProducAon	
  Load	
  Test	
  
SoluAon:	
  3	
  Tiers	
  of	
  Load	
  TesAng	
  
4	
  
7	
  
Goal:	
  Prevent	
  performance	
  &	
  scalability	
  problems	
  before	
  code	
  is	
  wriDen	
  
Tier	
  1:	
  Scalability	
  Design	
  Review	
  
8	
  
•  Treat	
  performance	
  at	
  scale	
  as	
  a	
  required	
  feature	
  	
  
•  Ask	
  quesAons	
  during	
  design	
  phase	
  
o  Expected	
  performance	
  of	
  the	
  feature	
  
o  Impact	
  on	
  dependencies	
  
•  Required	
  (where	
  applicable)	
  
o  Stories	
  to	
  supply	
  performance	
  monitoring	
  
o  Stories	
  to	
  automate	
  measuring	
  performance	
  at	
  scale	
  
Scalability	
  Design	
  Review:	
  Method	
  
5	
  
9	
  
•  Throughput	
  	
  
o  EsAmated	
  peak	
  requests/minute	
  
o  Average	
  number	
  of	
  bytes	
  in	
  &	
  outbound	
  per	
  request	
  
•  Latency	
  
o  Response	
  Times	
  during	
  peak	
  traffic	
  levels	
  
•  median	
  
o  Not	
  average	
  because	
  we	
  don’t	
  want	
  outliers	
  to	
  skew	
  results	
  
•  95%	
  
o  95%	
  of	
  requests	
  get	
  this	
  response	
  Ame	
  or	
  beDer	
  
o  5%	
  of	
  requests	
  are	
  slower	
  
•  Monitoring	
  
o  Require	
  runAme	
  visibility	
  for	
  throughput,	
  latency	
  &	
  error	
  rate	
  
o  If	
  you	
  can’t	
  measure	
  performance,	
  assume	
  it	
  is	
  poor	
  
Clarify	
  Feature	
  Performance	
  &	
  Monitoring	
  ExpectaAons	
  
10	
  
•  List	
  all	
  of	
  the	
  feature's	
  resource	
  dependencies	
  
o  API	
  calls	
  to	
  other	
  code/3rd	
  party	
  vendors	
  
o  Databases	
  
•  Response	
  Time	
  
o  What	
  Ameout	
  is	
  planned	
  for	
  each	
  call	
  to	
  a	
  dependency?	
  
o  How	
  will	
  the	
  feature	
  behave	
  when	
  its	
  dependency	
  call	
  fails	
  or	
  Ames	
  out?	
  
•  Throughput	
  
o  What	
  is	
  the	
  addiAonal	
  peak	
  throughput	
  (req/min)	
  your	
  feature	
  will	
  place	
  on	
  
its	
  dependencies?	
  
o  Can	
  the	
  dependent	
  resources	
  handle	
  the	
  addiAonal	
  load?	
  
•  Database	
  Scale	
  
o  Number	
  of	
  concurrent	
  database	
  connecAons	
  
o  Capacity:	
  data	
  growth	
  rate	
  over	
  Ame	
  
•  Get	
  approval	
  from	
  dependency	
  owners	
  
o  Hallway	
  agreements	
  are	
  insufficient	
  
Assess	
  Impact	
  on	
  Dependent	
  Resources	
  
6	
  
11	
  
•  Who	
  needs	
  to	
  determine	
  throughput	
  &	
  response	
  Ame	
  
requirements?	
  
o  Ideally	
  Product	
  Owner/Product	
  Manager	
  owns	
  this	
  
•  Requires	
  input	
  from	
  dev/architecture	
  
•  Which	
  projects	
  &	
  teams	
  need	
  scalability	
  review?	
  
o  Encountered	
  pushback	
  on	
  addiAonal	
  design	
  overhead/meeAngs	
  
•  Consider	
  the	
  cost	
  of	
  delivering	
  features	
  that	
  don’t	
  scale	
  
•  All	
  dev	
  teams;	
  all	
  dev	
  projects	
  and	
  post-­‐release	
  bug	
  fixes	
  
Scalability	
  Design	
  Review:	
  Challenges	
  Faced	
  
12	
  
Meaning	
  
•  Benchmark	
  web	
  services	
  and	
  heavy	
  traffic	
  web	
  pages	
  individually	
  
	
  
Goals	
  
1.  Early	
  idenAficaAon	
  of	
  boDlenecks	
  and	
  leaks	
  
2.  Measure	
  code	
  performance	
  prior	
  to	
  first	
  producAon	
  release	
  
3.  Catch	
  code	
  performance	
  regressions	
  over	
  Ame	
  
Tier	
  2:	
  ConAnuous	
  Unit	
  Load	
  TesAng	
  
7	
  
13	
  
What	
  Does	
  Unit	
  Load	
  TesAng	
  Cover?	
  
14	
  
•  Isolated,	
  Stable	
  Test	
  Environment	
  
•  Automated	
  ConAnuous	
  TesAng	
  
o  Develop	
  a	
  Gatling	
  load	
  test	
  for	
  each	
  web	
  service/page	
  
o  Launch	
  load	
  tests	
  conAnuously	
  via	
  Jenkins	
  
•  Visual	
  Test	
  Results/Performance	
  Trends	
  
o  Collect	
  test	
  results	
  in	
  Graphite	
  database	
  
o  View	
  test	
  trends	
  in	
  Jenkins’	
  Gatling	
  plugin	
  
Unit	
  Load	
  TesAng:	
  Method	
  at	
  ShuDerfly	
  
8	
  
15	
  
o  Memory,	
  file,	
  database	
  connecAon	
  leaks	
  
o  Heavy	
  database	
  queries	
  
Unit	
  Load	
  TesAng:	
  Find	
  Leaks	
  Early	
  
16	
  
Environment,	
  Environment,	
  Environment!	
  
o  Designing	
  &	
  funding	
  a	
  test	
  environment	
  to	
  match	
  producAon	
  
•  Hardware	
  &	
  data	
  
o  Maintaining	
  stable	
  non-­‐producAon	
  environment	
  
o  Can’t	
  run	
  load	
  test	
  for	
  every	
  code	
  change	
  
•  Isolated	
  environment	
  
•  Tests	
  run	
  serially	
  to	
  avoid	
  performance	
  
variability	
  (shared	
  resources)	
  
Unit	
  Load	
  TesAng:	
  Challenges	
  Faced	
  
9	
  
17	
  
Meaning	
  
•  Generate	
  site	
  load	
  to	
  reflect	
  projected	
  peak	
  site	
  usage	
  
Goals	
  
1.  Prove	
  all	
  components	
  can	
  sustain	
  peak	
  load	
  simultaneously	
  
o  Shared	
  resources	
  can	
  handle	
  mixed	
  traffic	
  at	
  scale	
  
•  Databases,	
  load	
  balancers,	
  switches,	
  etc.	
  
2.  Prove	
  effecAveness	
  of	
  failover	
  &	
  resiliency	
  features	
  at	
  scale	
  
Tier	
  3:	
  End-­‐to-­‐end	
  Load	
  TesAng	
  
18	
  
What	
  does	
  End-­‐to-­‐end	
  Load	
  TesAng	
  Encompass?	
  
10	
  
19	
  
End-­‐to-­‐end	
  Load	
  TesAng	
  Method	
  
Tooling	
  
o  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  
o  .	
  
Environment	
  
o  Test	
  in	
  producAon	
  during	
  low	
  usage	
  periods	
  
Data	
  set	
  
o  Generate	
  test	
  accounts	
  populated	
  with	
  data	
  similar	
  to	
  real	
  users	
  
Test	
  Planning,	
  Project	
  Tracking,	
  Post-­‐tesAng	
  Results	
  
o  Google	
  Sheets	
  to	
  calculate	
  &	
  track	
  transacAon	
  throughput	
  
20	
  
Site	
  Scale	
  Tests	
  
•  Cover	
  ~15	
  end-­‐user	
  scenarios	
  
•  ~20	
  load	
  test	
  execuAons	
  in	
  2016	
  
o  3	
  for	
  hardware	
  failover	
  
o  5	
  for	
  full	
  site	
  scale	
  
o  12	
  for	
  targeted	
  funcAonality	
  	
  	
  
11	
  
21	
  
•  Database	
  	
  
o  Heavier	
  read/write	
  load	
  than	
  expected	
  
o  ConnecAon	
  pool	
  exhausted	
  
o  Failover/failback	
  configuraAon	
  problems	
  
•  Front-­‐end	
  code	
  DOS’ing	
  back-­‐end	
  services	
  
•  Client	
  bypassing	
  Squid	
  cache	
  
o  Client	
  calling	
  web	
  services	
  more	
  frequently	
  than	
  expected	
  
•  Load	
  balancer	
  misconfiguraAon	
  
•  Switch/ISP	
  misconfiguraAon	
  
•  Gaps	
  in	
  monitoring/alerAng	
  
End-­‐to-­‐end	
  Load	
  TesAng:	
  Site	
  Outages	
  Prevented	
  
22	
  
End-­‐to-­‐end	
  Load	
  TesAng:	
  Challenges	
  Faced	
  
•  Cost	
  
o  SoSware	
  &	
  cloud	
  services	
  license	
  
o  Complex	
  test	
  development	
  work	
  
o  30+	
  engineers	
  up	
  most	
  of	
  the	
  night	
  during	
  test	
  execuAon	
  
o  Find	
  &	
  fix	
  boDlenecks	
  iteraAvely	
  
•  Gerng	
  acAonable	
  results	
  from	
  arAficial	
  tests	
  
o  Can’t	
  test	
  every	
  funcAonal	
  case	
  
o  Fixed	
  test	
  data	
  set	
  
•  Hard	
  to	
  avoid	
  hot-­‐sporng	
  
•  Hard	
  to	
  mimic	
  real	
  cache	
  paDerns	
  
•  ImpacAng	
  producAon	
  data	
  
o  Minimize	
  customer	
  impact	
  during	
  &	
  aSer	
  tests	
  
o  Don’t	
  mess	
  with	
  real	
  customer	
  data	
  
o  Ensure	
  business	
  metrics	
  don’t	
  include	
  load	
  test	
  acAvity	
  
o  Avoid	
  order	
  fulfillment	
  
o  Conserve	
  producAon	
  DB	
  space	
  while	
  avoiding	
  deleAon	
  
12	
  
23	
  
•  Started	
  with	
  unit	
  load	
  tesAng	
  (2013)	
  
o  Started	
  building	
  isolated	
  test	
  env	
  in	
  2012	
  
o  ADracted	
  early	
  adopters	
  
o  Rapidly	
  provide	
  benchmarks	
  for	
  criAcal	
  services	
  
•  Added	
  end-­‐to-­‐end	
  tesAng	
  (2015)	
  
o  Start	
  with	
  proof	
  of	
  concept	
  
•  simple	
  tests	
  to	
  find	
  biggest	
  problems;	
  show	
  value	
  
o  Expand	
  coverage:	
  more	
  end-­‐user	
  paths	
  
o  Introduce	
  failover	
  tesAng	
  under	
  load	
  
•  ImplemenAng	
  scalability	
  design	
  review	
  (2017)	
  
o  Started	
  with	
  early	
  adopters	
  
o  SAll	
  a	
  work	
  in	
  progress	
  at	
  ShuDerfly	
  
EvoluAon	
  of	
  3	
  Tiers	
  Over	
  5+	
  Years	
  
24	
  
•  Root-­‐cause	
  every	
  issue,	
  not	
  just	
  the	
  worst	
  ones	
  
o  Most	
  outages	
  have	
  mulAple	
  root	
  causes	
  contribuAng	
  
o  Capture	
  all	
  contribuAng	
  factors,	
  not	
  just	
  easiest	
  to	
  blame/fix	
  
o  Lack	
  of	
  monitoring/alerAng	
  is	
  also	
  a	
  root	
  cause!	
  
•  For	
  each	
  issue	
  that	
  crops	
  up	
  in	
  unit	
  &	
  end-­‐to-­‐end	
  tesAng	
  
o  Ask	
  how	
  issues	
  could	
  have	
  been	
  prevented	
  and/or	
  caught	
  sooner	
  
o  Fix	
  classes	
  of	
  problems,	
  not	
  just	
  instances	
  of	
  problems	
  
•  Look	
  for	
  “near	
  misses”,	
  not	
  just	
  full	
  outages/failures	
  
Steps	
  to	
  Increase	
  Perf	
  TesAng	
  Return	
  on	
  Investment	
  
13	
  
25	
  
No	
  longer	
  acceptable	
  
o  Blaming	
  tools	
  
•  Fix,	
  replace	
  or	
  delete	
  faulty	
  tooling	
  
o  Ignoring/explaining-­‐away	
  slow	
  performance	
  
•  Especially	
  without	
  proving	
  our	
  hypothesis!	
  
o  Should	
  vs.	
  does	
  
Required	
  
o  Performance	
  parameters	
  up	
  front	
  
•  Peak	
  throughput	
  
•  Expected	
  Latency	
  (95%	
  response	
  Ame)	
  
o  Part	
  of	
  ”definiAon	
  of	
  done”	
  
•  Load	
  unit	
  tests	
  
•  Monitoring	
  &	
  alerts	
  
CreaAng	
  a	
  Culture	
  of	
  Performance	
  at	
  Scale	
  
26	
  
QuesAons	
  

More Related Content

What's hot

JavaOne - Performance Focused DevOps to Improve Cont Delivery
JavaOne - Performance Focused DevOps to Improve Cont DeliveryJavaOne - Performance Focused DevOps to Improve Cont Delivery
JavaOne - Performance Focused DevOps to Improve Cont DeliveryAndreas Grabner
 
StarWest 2013 Performance is not an afterthought – make it a part of your Agi...
StarWest 2013 Performance is not an afterthought – make it a part of your Agi...StarWest 2013 Performance is not an afterthought – make it a part of your Agi...
StarWest 2013 Performance is not an afterthought – make it a part of your Agi...Andreas Grabner
 
How To Introduce Cloud Based Load Testing to Your Jenkins Continuous Delivery...
How To Introduce Cloud Based Load Testing to Your Jenkins Continuous Delivery...How To Introduce Cloud Based Load Testing to Your Jenkins Continuous Delivery...
How To Introduce Cloud Based Load Testing to Your Jenkins Continuous Delivery...Jennifer Finney
 
Sydney Continuous Delivery Meetup May 2014
Sydney Continuous Delivery Meetup May 2014Sydney Continuous Delivery Meetup May 2014
Sydney Continuous Delivery Meetup May 2014Andreas Grabner
 
Berlin QA - Performance Testing
Berlin QA - Performance TestingBerlin QA - Performance Testing
Berlin QA - Performance TestingGlobe Testing
 
Ar*@!+$es to this. getting IBM connections to do what you want
Ar*@!+$es to this. getting IBM connections to do what you want Ar*@!+$es to this. getting IBM connections to do what you want
Ar*@!+$es to this. getting IBM connections to do what you want Mark Myers
 
Delivering changes for applications and databases @ Azure
Delivering changes for applications and databases @ AzureDelivering changes for applications and databases @ Azure
Delivering changes for applications and databases @ AzureEduardo Piairo
 
Migration tales from java ee 5 to 7
Migration tales from java ee 5 to 7Migration tales from java ee 5 to 7
Migration tales from java ee 5 to 7Roberto Cortez
 
Docker/DevOps Meetup: Metrics-Driven Continuous Performance and Scalabilty
Docker/DevOps Meetup: Metrics-Driven Continuous Performance and ScalabiltyDocker/DevOps Meetup: Metrics-Driven Continuous Performance and Scalabilty
Docker/DevOps Meetup: Metrics-Driven Continuous Performance and ScalabiltyAndreas Grabner
 
Dan Cuellar
Dan CuellarDan Cuellar
Dan CuellarCodeFest
 
Enable Domino Data Access Services (DAS)
Enable Domino Data Access Services (DAS)Enable Domino Data Access Services (DAS)
Enable Domino Data Access Services (DAS)Slobodan Lohja
 
Tis The Season: Load Testing Tips and Checklist for Retail Seasonal Readiness
Tis The Season: Load Testing Tips and Checklist for Retail Seasonal ReadinessTis The Season: Load Testing Tips and Checklist for Retail Seasonal Readiness
Tis The Season: Load Testing Tips and Checklist for Retail Seasonal ReadinessSOASTA
 
Top 5 Java Performance Metrics, Tips & Tricks
Top 5 Java Performance Metrics, Tips & TricksTop 5 Java Performance Metrics, Tips & Tricks
Top 5 Java Performance Metrics, Tips & TricksAppDynamics
 
Performance Testing in Oracle Apps
Performance Testing in Oracle AppsPerformance Testing in Oracle Apps
Performance Testing in Oracle AppsBiswajit Pratihari
 
High Volume Payments using Mule
High Volume Payments using MuleHigh Volume Payments using Mule
High Volume Payments using MuleAdhish Pendharkar
 
Provisioning Oracle Fusion Middleware Environments with Chef and Puppet
Provisioning Oracle Fusion Middleware Environments with Chef and PuppetProvisioning Oracle Fusion Middleware Environments with Chef and Puppet
Provisioning Oracle Fusion Middleware Environments with Chef and PuppetEdwin Biemond
 
Continuous Testing
Continuous TestingContinuous Testing
Continuous TestingSOASTA
 
Load testing using_neoload by kc
Load testing using_neoload by kcLoad testing using_neoload by kc
Load testing using_neoload by kckrishna chaitanya
 
Oracle Fusion Middleware provisioning with Puppet
Oracle Fusion Middleware provisioning with PuppetOracle Fusion Middleware provisioning with Puppet
Oracle Fusion Middleware provisioning with PuppetEdwin Biemond
 

What's hot (20)

JavaOne - Performance Focused DevOps to Improve Cont Delivery
JavaOne - Performance Focused DevOps to Improve Cont DeliveryJavaOne - Performance Focused DevOps to Improve Cont Delivery
JavaOne - Performance Focused DevOps to Improve Cont Delivery
 
StarWest 2013 Performance is not an afterthought – make it a part of your Agi...
StarWest 2013 Performance is not an afterthought – make it a part of your Agi...StarWest 2013 Performance is not an afterthought – make it a part of your Agi...
StarWest 2013 Performance is not an afterthought – make it a part of your Agi...
 
How To Introduce Cloud Based Load Testing to Your Jenkins Continuous Delivery...
How To Introduce Cloud Based Load Testing to Your Jenkins Continuous Delivery...How To Introduce Cloud Based Load Testing to Your Jenkins Continuous Delivery...
How To Introduce Cloud Based Load Testing to Your Jenkins Continuous Delivery...
 
Sydney Continuous Delivery Meetup May 2014
Sydney Continuous Delivery Meetup May 2014Sydney Continuous Delivery Meetup May 2014
Sydney Continuous Delivery Meetup May 2014
 
Berlin QA - Performance Testing
Berlin QA - Performance TestingBerlin QA - Performance Testing
Berlin QA - Performance Testing
 
EVOLVE'13 | Keynote | Roy Fielding
EVOLVE'13 | Keynote | Roy FieldingEVOLVE'13 | Keynote | Roy Fielding
EVOLVE'13 | Keynote | Roy Fielding
 
Ar*@!+$es to this. getting IBM connections to do what you want
Ar*@!+$es to this. getting IBM connections to do what you want Ar*@!+$es to this. getting IBM connections to do what you want
Ar*@!+$es to this. getting IBM connections to do what you want
 
Delivering changes for applications and databases @ Azure
Delivering changes for applications and databases @ AzureDelivering changes for applications and databases @ Azure
Delivering changes for applications and databases @ Azure
 
Migration tales from java ee 5 to 7
Migration tales from java ee 5 to 7Migration tales from java ee 5 to 7
Migration tales from java ee 5 to 7
 
Docker/DevOps Meetup: Metrics-Driven Continuous Performance and Scalabilty
Docker/DevOps Meetup: Metrics-Driven Continuous Performance and ScalabiltyDocker/DevOps Meetup: Metrics-Driven Continuous Performance and Scalabilty
Docker/DevOps Meetup: Metrics-Driven Continuous Performance and Scalabilty
 
Dan Cuellar
Dan CuellarDan Cuellar
Dan Cuellar
 
Enable Domino Data Access Services (DAS)
Enable Domino Data Access Services (DAS)Enable Domino Data Access Services (DAS)
Enable Domino Data Access Services (DAS)
 
Tis The Season: Load Testing Tips and Checklist for Retail Seasonal Readiness
Tis The Season: Load Testing Tips and Checklist for Retail Seasonal ReadinessTis The Season: Load Testing Tips and Checklist for Retail Seasonal Readiness
Tis The Season: Load Testing Tips and Checklist for Retail Seasonal Readiness
 
Top 5 Java Performance Metrics, Tips & Tricks
Top 5 Java Performance Metrics, Tips & TricksTop 5 Java Performance Metrics, Tips & Tricks
Top 5 Java Performance Metrics, Tips & Tricks
 
Performance Testing in Oracle Apps
Performance Testing in Oracle AppsPerformance Testing in Oracle Apps
Performance Testing in Oracle Apps
 
High Volume Payments using Mule
High Volume Payments using MuleHigh Volume Payments using Mule
High Volume Payments using Mule
 
Provisioning Oracle Fusion Middleware Environments with Chef and Puppet
Provisioning Oracle Fusion Middleware Environments with Chef and PuppetProvisioning Oracle Fusion Middleware Environments with Chef and Puppet
Provisioning Oracle Fusion Middleware Environments with Chef and Puppet
 
Continuous Testing
Continuous TestingContinuous Testing
Continuous Testing
 
Load testing using_neoload by kc
Load testing using_neoload by kcLoad testing using_neoload by kc
Load testing using_neoload by kc
 
Oracle Fusion Middleware provisioning with Puppet
Oracle Fusion Middleware provisioning with PuppetOracle Fusion Middleware provisioning with Puppet
Oracle Fusion Middleware provisioning with Puppet
 

Similar to A Three-Tier Load Testing Program Saved Our Bacon

ConFoo: Moving web performance testing to the left
ConFoo: Moving web performance testing to the leftConFoo: Moving web performance testing to the left
ConFoo: Moving web performance testing to the leftTom Chavez
 
Preparing for Enterprise Continuous Delivery - 5 Critical Steps
Preparing for Enterprise Continuous Delivery - 5 Critical StepsPreparing for Enterprise Continuous Delivery - 5 Critical Steps
Preparing for Enterprise Continuous Delivery - 5 Critical StepsXebiaLabs
 
Comprehensive Performance Testing: From Early Dev to Live Production
Comprehensive Performance Testing: From Early Dev to Live ProductionComprehensive Performance Testing: From Early Dev to Live Production
Comprehensive Performance Testing: From Early Dev to Live ProductionTechWell
 
Load Testing Best Practices
Load Testing Best PracticesLoad Testing Best Practices
Load Testing Best PracticesApica
 
Holiday Readiness: Best Practices for Successful Holiday Readiness Testing
Holiday Readiness: Best Practices for Successful Holiday Readiness TestingHoliday Readiness: Best Practices for Successful Holiday Readiness Testing
Holiday Readiness: Best Practices for Successful Holiday Readiness TestingApica
 
QA Fest 2015. Владимир Примаков. Процесс нагрузочного тестирования и его план...
QA Fest 2015. Владимир Примаков. Процесс нагрузочного тестирования и его план...QA Fest 2015. Владимир Примаков. Процесс нагрузочного тестирования и его план...
QA Fest 2015. Владимир Примаков. Процесс нагрузочного тестирования и его план...QAFest
 
Performance Testing
Performance TestingPerformance Testing
Performance TestingAnu Shaji
 
Continuous Load Testing with CloudTest and Jenkins
Continuous Load Testing with CloudTest and JenkinsContinuous Load Testing with CloudTest and Jenkins
Continuous Load Testing with CloudTest and JenkinsSOASTA
 
Become a Performance Diagnostics Hero
Become a Performance Diagnostics HeroBecome a Performance Diagnostics Hero
Become a Performance Diagnostics HeroTechWell
 
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...Dakiry
 
2015 02 24 lmtv baselining
2015 02 24 lmtv baselining2015 02 24 lmtv baselining
2015 02 24 lmtv baseliningTony Fortunato
 
Nonfunctional Testing: Examine the Other Side of the Coin
Nonfunctional Testing: Examine the Other Side of the CoinNonfunctional Testing: Examine the Other Side of the Coin
Nonfunctional Testing: Examine the Other Side of the CoinTechWell
 
Starting Your DevOps Journey – Practical Tips for Ops
Starting Your DevOps Journey – Practical Tips for OpsStarting Your DevOps Journey – Practical Tips for Ops
Starting Your DevOps Journey – Practical Tips for OpsDynatrace
 
July webinar l How to Handle the Holiday Retail Rush with Agile Performance T...
July webinar l How to Handle the Holiday Retail Rush with Agile Performance T...July webinar l How to Handle the Holiday Retail Rush with Agile Performance T...
July webinar l How to Handle the Holiday Retail Rush with Agile Performance T...Apica
 
Service Virtualization: What Testers Need to Know
Service Virtualization: What Testers Need to KnowService Virtualization: What Testers Need to Know
Service Virtualization: What Testers Need to KnowTechWell
 
Performance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter introPerformance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter introMykola Kovsh
 
(DVO201) Scaling Your Web Applications with AWS Elastic Beanstalk
(DVO201) Scaling Your Web Applications with AWS Elastic Beanstalk(DVO201) Scaling Your Web Applications with AWS Elastic Beanstalk
(DVO201) Scaling Your Web Applications with AWS Elastic BeanstalkAmazon Web Services
 
Performance Metrics for your Build Pipeline - presented at Vienna WebPerf Oct...
Performance Metrics for your Build Pipeline - presented at Vienna WebPerf Oct...Performance Metrics for your Build Pipeline - presented at Vienna WebPerf Oct...
Performance Metrics for your Build Pipeline - presented at Vienna WebPerf Oct...Andreas Grabner
 
Frank Cohen - Are We Ready For Cloud Testing - EuroSTAR 2010
Frank Cohen - Are We Ready For Cloud Testing - EuroSTAR 2010Frank Cohen - Are We Ready For Cloud Testing - EuroSTAR 2010
Frank Cohen - Are We Ready For Cloud Testing - EuroSTAR 2010TEST Huddle
 

Similar to A Three-Tier Load Testing Program Saved Our Bacon (20)

ConFoo: Moving web performance testing to the left
ConFoo: Moving web performance testing to the leftConFoo: Moving web performance testing to the left
ConFoo: Moving web performance testing to the left
 
Preparing for Enterprise Continuous Delivery - 5 Critical Steps
Preparing for Enterprise Continuous Delivery - 5 Critical StepsPreparing for Enterprise Continuous Delivery - 5 Critical Steps
Preparing for Enterprise Continuous Delivery - 5 Critical Steps
 
Comprehensive Performance Testing: From Early Dev to Live Production
Comprehensive Performance Testing: From Early Dev to Live ProductionComprehensive Performance Testing: From Early Dev to Live Production
Comprehensive Performance Testing: From Early Dev to Live Production
 
Load Testing Best Practices
Load Testing Best PracticesLoad Testing Best Practices
Load Testing Best Practices
 
Holiday Readiness: Best Practices for Successful Holiday Readiness Testing
Holiday Readiness: Best Practices for Successful Holiday Readiness TestingHoliday Readiness: Best Practices for Successful Holiday Readiness Testing
Holiday Readiness: Best Practices for Successful Holiday Readiness Testing
 
QA Fest 2015. Владимир Примаков. Процесс нагрузочного тестирования и его план...
QA Fest 2015. Владимир Примаков. Процесс нагрузочного тестирования и его план...QA Fest 2015. Владимир Примаков. Процесс нагрузочного тестирования и его план...
QA Fest 2015. Владимир Примаков. Процесс нагрузочного тестирования и его план...
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
 
Continuous Load Testing with CloudTest and Jenkins
Continuous Load Testing with CloudTest and JenkinsContinuous Load Testing with CloudTest and Jenkins
Continuous Load Testing with CloudTest and Jenkins
 
Become a Performance Diagnostics Hero
Become a Performance Diagnostics HeroBecome a Performance Diagnostics Hero
Become a Performance Diagnostics Hero
 
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
 
2015 02 24 lmtv baselining
2015 02 24 lmtv baselining2015 02 24 lmtv baselining
2015 02 24 lmtv baselining
 
Nonfunctional Testing: Examine the Other Side of the Coin
Nonfunctional Testing: Examine the Other Side of the CoinNonfunctional Testing: Examine the Other Side of the Coin
Nonfunctional Testing: Examine the Other Side of the Coin
 
Starting Your DevOps Journey – Practical Tips for Ops
Starting Your DevOps Journey – Practical Tips for OpsStarting Your DevOps Journey – Practical Tips for Ops
Starting Your DevOps Journey – Practical Tips for Ops
 
July webinar l How to Handle the Holiday Retail Rush with Agile Performance T...
July webinar l How to Handle the Holiday Retail Rush with Agile Performance T...July webinar l How to Handle the Holiday Retail Rush with Agile Performance T...
July webinar l How to Handle the Holiday Retail Rush with Agile Performance T...
 
Service Virtualization: What Testers Need to Know
Service Virtualization: What Testers Need to KnowService Virtualization: What Testers Need to Know
Service Virtualization: What Testers Need to Know
 
Performance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter introPerformance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter intro
 
Neev Load Testing Services
Neev Load Testing ServicesNeev Load Testing Services
Neev Load Testing Services
 
(DVO201) Scaling Your Web Applications with AWS Elastic Beanstalk
(DVO201) Scaling Your Web Applications with AWS Elastic Beanstalk(DVO201) Scaling Your Web Applications with AWS Elastic Beanstalk
(DVO201) Scaling Your Web Applications with AWS Elastic Beanstalk
 
Performance Metrics for your Build Pipeline - presented at Vienna WebPerf Oct...
Performance Metrics for your Build Pipeline - presented at Vienna WebPerf Oct...Performance Metrics for your Build Pipeline - presented at Vienna WebPerf Oct...
Performance Metrics for your Build Pipeline - presented at Vienna WebPerf Oct...
 
Frank Cohen - Are We Ready For Cloud Testing - EuroSTAR 2010
Frank Cohen - Are We Ready For Cloud Testing - EuroSTAR 2010Frank Cohen - Are We Ready For Cloud Testing - EuroSTAR 2010
Frank Cohen - Are We Ready For Cloud Testing - EuroSTAR 2010
 

More from TechWell

Failing and Recovering
Failing and RecoveringFailing and Recovering
Failing and RecoveringTechWell
 
Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization TechWell
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTechWell
 
System-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartSystem-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartTechWell
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyTechWell
 
Testing Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTesting Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTechWell
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowTechWell
 
Develop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityDevelop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityTechWell
 
Eliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyEliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyTechWell
 
Transform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTransform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTechWell
 
The Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipThe Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipTechWell
 
Resolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsResolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsTechWell
 
Pin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GamePin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GameTechWell
 
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsAgile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsTechWell
 
A Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationA Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationTechWell
 
Databases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessDatabases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessTechWell
 
Mobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateMobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateTechWell
 
Cultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessCultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessTechWell
 
Turn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTurn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTechWell
 

More from TechWell (20)

Failing and Recovering
Failing and RecoveringFailing and Recovering
Failing and Recovering
 
Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build Architecture
 
System-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartSystem-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good Start
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test Strategy
 
Testing Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTesting Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for Success
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlow
 
Develop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityDevelop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your Sanity
 
Ma 15
Ma 15Ma 15
Ma 15
 
Eliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyEliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps Strategy
 
Transform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTransform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOps
 
The Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipThe Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—Leadership
 
Resolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsResolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile Teams
 
Pin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GamePin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile Game
 
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsAgile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
 
A Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationA Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps Implementation
 
Databases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessDatabases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery Process
 
Mobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateMobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to Automate
 
Cultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessCultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for Success
 
Turn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTurn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile Transformation
 

Recently uploaded

Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 

Recently uploaded (20)

Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 

A Three-Tier Load Testing Program Saved Our Bacon

  • 1.           T14   Performance  Testing   10/5/17  13:30           A  Three-­‐Tier  Load  Testing  Program   Saved  Our  Bacon     Presented  by:     Melissa  Chawla    Guidewire     Brought  to  you  by:                   350  Corporate  Way,  Suite  400,  Orange  Park,  FL  32073     888-­‐-­‐-­‐268-­‐-­‐-­‐8770  ·∙·∙  904-­‐-­‐-­‐278-­‐-­‐-­‐0524  -­‐  info@techwell.com  -­‐  http://www.starwest.techwell.com/              
  • 2.   Melissa  Chawla   Guidewire     Melissa  Chawla  manages  a  software  development  team  at  Guidewire.  For  the   previous  five  years,  she  managed  the  test  infrastructure  and  performance   engineering  teams  at  Shutterfly.  Prior  to  that,  Melissa  held  software   development  positions  at  startups  in  the  high  performance  computing  storage   and  development  tools  software  industries.  She  worked  in  the  Tcl/Tk  language   development  team  at  Sun  Labs,  contributing  to  several  open  source  projects   around  Tcl.  Her  favorite  sports  are  downhill  skiing  and  Ultimate  Frisbee.  Learn   more  about  Melissa  at  LinkedIn.    
  • 3. 1       The  Resistance.   How  a  3  Tiered  Load  Tes.ng  Program   Saves  Shu7erfly’s  Bacon   STARTWEST   Conference   October  5,  2017   By  Melissa  Chawla   2   •  Goal  of  performance  tesAng   •  ShuDerfly’s  ecosystem   •  3  Tiers  of  performance  tesAng   o  Goal,  tesAng  method,  value  added  &  challenges  faced   •  The  Journey   o  EvoluAon  of  3  perf  tesAng  Aers   o  Steps  to  increase  perf  tesAng  return  on  investment   o  CreaAng  a  performance  culture   Agenda  
  • 4. 2   3   1.  Improve  web  page  speed  during  peak  load   2.  Avoid  preventable  site  outages   Main  Performance  Goal  for  ShuDerfly   4   •  ApplicaAon  SoSware   o  Ecommerce  +  photo  personalizaAon/management   o  Main  website  +  naAve  iPhone,  iPad  &  android  apps   o  Diverse  soSware  plaXorm  due  to  Ame  &  acquisiAons   •  SoSware  Layers   o  Proxy,  authenAcaAon  &  caching  layers   o  Third-­‐party  dependencies   •  CDN,  Tax  &  payment  services,  beacons,  etc.   •  Hardware  PlaXorm   o  Datacenter   •  Switches,  load  balancers,  400+  servers   o  Cloud  (AWS)   •  cloud  ≠ 𝑠𝑐𝑎𝑙𝑒   ShuDerfly’s  Complex  Layered  Ecosystem  
  • 5. 3   5   ShuDerfly’s  SoSware  ApplicaAon  Layers   6   1.  Scalability  Design  Review   2.  ConAnuous  Unit  Load  TesAng   3.  End-­‐to-­‐end  ProducAon  Load  Test   SoluAon:  3  Tiers  of  Load  TesAng  
  • 6. 4   7   Goal:  Prevent  performance  &  scalability  problems  before  code  is  wriDen   Tier  1:  Scalability  Design  Review   8   •  Treat  performance  at  scale  as  a  required  feature     •  Ask  quesAons  during  design  phase   o  Expected  performance  of  the  feature   o  Impact  on  dependencies   •  Required  (where  applicable)   o  Stories  to  supply  performance  monitoring   o  Stories  to  automate  measuring  performance  at  scale   Scalability  Design  Review:  Method  
  • 7. 5   9   •  Throughput     o  EsAmated  peak  requests/minute   o  Average  number  of  bytes  in  &  outbound  per  request   •  Latency   o  Response  Times  during  peak  traffic  levels   •  median   o  Not  average  because  we  don’t  want  outliers  to  skew  results   •  95%   o  95%  of  requests  get  this  response  Ame  or  beDer   o  5%  of  requests  are  slower   •  Monitoring   o  Require  runAme  visibility  for  throughput,  latency  &  error  rate   o  If  you  can’t  measure  performance,  assume  it  is  poor   Clarify  Feature  Performance  &  Monitoring  ExpectaAons   10   •  List  all  of  the  feature's  resource  dependencies   o  API  calls  to  other  code/3rd  party  vendors   o  Databases   •  Response  Time   o  What  Ameout  is  planned  for  each  call  to  a  dependency?   o  How  will  the  feature  behave  when  its  dependency  call  fails  or  Ames  out?   •  Throughput   o  What  is  the  addiAonal  peak  throughput  (req/min)  your  feature  will  place  on   its  dependencies?   o  Can  the  dependent  resources  handle  the  addiAonal  load?   •  Database  Scale   o  Number  of  concurrent  database  connecAons   o  Capacity:  data  growth  rate  over  Ame   •  Get  approval  from  dependency  owners   o  Hallway  agreements  are  insufficient   Assess  Impact  on  Dependent  Resources  
  • 8. 6   11   •  Who  needs  to  determine  throughput  &  response  Ame   requirements?   o  Ideally  Product  Owner/Product  Manager  owns  this   •  Requires  input  from  dev/architecture   •  Which  projects  &  teams  need  scalability  review?   o  Encountered  pushback  on  addiAonal  design  overhead/meeAngs   •  Consider  the  cost  of  delivering  features  that  don’t  scale   •  All  dev  teams;  all  dev  projects  and  post-­‐release  bug  fixes   Scalability  Design  Review:  Challenges  Faced   12   Meaning   •  Benchmark  web  services  and  heavy  traffic  web  pages  individually     Goals   1.  Early  idenAficaAon  of  boDlenecks  and  leaks   2.  Measure  code  performance  prior  to  first  producAon  release   3.  Catch  code  performance  regressions  over  Ame   Tier  2:  ConAnuous  Unit  Load  TesAng  
  • 9. 7   13   What  Does  Unit  Load  TesAng  Cover?   14   •  Isolated,  Stable  Test  Environment   •  Automated  ConAnuous  TesAng   o  Develop  a  Gatling  load  test  for  each  web  service/page   o  Launch  load  tests  conAnuously  via  Jenkins   •  Visual  Test  Results/Performance  Trends   o  Collect  test  results  in  Graphite  database   o  View  test  trends  in  Jenkins’  Gatling  plugin   Unit  Load  TesAng:  Method  at  ShuDerfly  
  • 10. 8   15   o  Memory,  file,  database  connecAon  leaks   o  Heavy  database  queries   Unit  Load  TesAng:  Find  Leaks  Early   16   Environment,  Environment,  Environment!   o  Designing  &  funding  a  test  environment  to  match  producAon   •  Hardware  &  data   o  Maintaining  stable  non-­‐producAon  environment   o  Can’t  run  load  test  for  every  code  change   •  Isolated  environment   •  Tests  run  serially  to  avoid  performance   variability  (shared  resources)   Unit  Load  TesAng:  Challenges  Faced  
  • 11. 9   17   Meaning   •  Generate  site  load  to  reflect  projected  peak  site  usage   Goals   1.  Prove  all  components  can  sustain  peak  load  simultaneously   o  Shared  resources  can  handle  mixed  traffic  at  scale   •  Databases,  load  balancers,  switches,  etc.   2.  Prove  effecAveness  of  failover  &  resiliency  features  at  scale   Tier  3:  End-­‐to-­‐end  Load  TesAng   18   What  does  End-­‐to-­‐end  Load  TesAng  Encompass?  
  • 12. 10   19   End-­‐to-­‐end  Load  TesAng  Method   Tooling   o                                              o  .   Environment   o  Test  in  producAon  during  low  usage  periods   Data  set   o  Generate  test  accounts  populated  with  data  similar  to  real  users   Test  Planning,  Project  Tracking,  Post-­‐tesAng  Results   o  Google  Sheets  to  calculate  &  track  transacAon  throughput   20   Site  Scale  Tests   •  Cover  ~15  end-­‐user  scenarios   •  ~20  load  test  execuAons  in  2016   o  3  for  hardware  failover   o  5  for  full  site  scale   o  12  for  targeted  funcAonality      
  • 13. 11   21   •  Database     o  Heavier  read/write  load  than  expected   o  ConnecAon  pool  exhausted   o  Failover/failback  configuraAon  problems   •  Front-­‐end  code  DOS’ing  back-­‐end  services   •  Client  bypassing  Squid  cache   o  Client  calling  web  services  more  frequently  than  expected   •  Load  balancer  misconfiguraAon   •  Switch/ISP  misconfiguraAon   •  Gaps  in  monitoring/alerAng   End-­‐to-­‐end  Load  TesAng:  Site  Outages  Prevented   22   End-­‐to-­‐end  Load  TesAng:  Challenges  Faced   •  Cost   o  SoSware  &  cloud  services  license   o  Complex  test  development  work   o  30+  engineers  up  most  of  the  night  during  test  execuAon   o  Find  &  fix  boDlenecks  iteraAvely   •  Gerng  acAonable  results  from  arAficial  tests   o  Can’t  test  every  funcAonal  case   o  Fixed  test  data  set   •  Hard  to  avoid  hot-­‐sporng   •  Hard  to  mimic  real  cache  paDerns   •  ImpacAng  producAon  data   o  Minimize  customer  impact  during  &  aSer  tests   o  Don’t  mess  with  real  customer  data   o  Ensure  business  metrics  don’t  include  load  test  acAvity   o  Avoid  order  fulfillment   o  Conserve  producAon  DB  space  while  avoiding  deleAon  
  • 14. 12   23   •  Started  with  unit  load  tesAng  (2013)   o  Started  building  isolated  test  env  in  2012   o  ADracted  early  adopters   o  Rapidly  provide  benchmarks  for  criAcal  services   •  Added  end-­‐to-­‐end  tesAng  (2015)   o  Start  with  proof  of  concept   •  simple  tests  to  find  biggest  problems;  show  value   o  Expand  coverage:  more  end-­‐user  paths   o  Introduce  failover  tesAng  under  load   •  ImplemenAng  scalability  design  review  (2017)   o  Started  with  early  adopters   o  SAll  a  work  in  progress  at  ShuDerfly   EvoluAon  of  3  Tiers  Over  5+  Years   24   •  Root-­‐cause  every  issue,  not  just  the  worst  ones   o  Most  outages  have  mulAple  root  causes  contribuAng   o  Capture  all  contribuAng  factors,  not  just  easiest  to  blame/fix   o  Lack  of  monitoring/alerAng  is  also  a  root  cause!   •  For  each  issue  that  crops  up  in  unit  &  end-­‐to-­‐end  tesAng   o  Ask  how  issues  could  have  been  prevented  and/or  caught  sooner   o  Fix  classes  of  problems,  not  just  instances  of  problems   •  Look  for  “near  misses”,  not  just  full  outages/failures   Steps  to  Increase  Perf  TesAng  Return  on  Investment  
  • 15. 13   25   No  longer  acceptable   o  Blaming  tools   •  Fix,  replace  or  delete  faulty  tooling   o  Ignoring/explaining-­‐away  slow  performance   •  Especially  without  proving  our  hypothesis!   o  Should  vs.  does   Required   o  Performance  parameters  up  front   •  Peak  throughput   •  Expected  Latency  (95%  response  Ame)   o  Part  of  ”definiAon  of  done”   •  Load  unit  tests   •  Monitoring  &  alerts   CreaAng  a  Culture  of  Performance  at  Scale   26   QuesAons