Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Performance Testing & Instrumenting       the KGB SMS Service        for the Super Bowl              J. Nathan Matias     ...
Acquisition
Launching inAcquisition              New Markets
Launching in   Super BowlAcquisition              New Markets      TV Ad
Emberlight
KGB SMS Answers
To: 118118Text:Wot is thewether 4cast4 londontonite
To: 118118     118118:Text:          WeatherWot is the     forecast forwether 4cast   London …4 londontonite
MX       Rails      Telecom   ServerCustomers
MX       Rails        Rails         Rails      Telecom   Server       Server        ServerCustomers        Databases      ...
Agents                Firefox     Firefox     Firefox       Firefox     Firefox                                       Java...
Agents                Firefox     Firefox     Firefox       Firefox     Firefox                                       Java...
Agents                Firefox     Firefox     Firefox       Firefox     Firefox                                       Java...
Agents                Firefox    Firefox     Firefox       Firefox     Firefox                                      Javasc...
Agents                Firefox    Firefox     Firefox       Firefox     Firefox                                      Javasc...
Agents                Firefox    Firefox     Firefox     Firefox   Firefox                                      Javascript...
Agents                  Firefox    Firefox     Firefox     Firefox   Firefox                                        Javasc...
Agents                            Internet + Browser                  Firefox           Scalability                       ...
Agents                            Internet + Browser                  Firefox           Scalability                       ...
Testing Software
Performance Testing Services
GUI Based                   Programmable        screenshot viawww.lynchconsulting.com.au/blog/
GUI Based                   Programmable                      es      Conte nt Websit        screenshot viawww.lynchconsul...
GUI Based                   Programmable                      es                              s      Conte nt Websit      ...
GUI Based  Web      HTTP                    serve webBrowser   Request                     content   A      arrives  Web  ...
Customer   question   A        arrives
agentCustomer   question                       takes   A        arrives                      question
agent       agentCustomer   question                       takes      checks   A        arrives                      quest...
agent       agent    agentCustomer   question                       takes      checks   answers   A        arrives        ...
agent       agent    agentCustomer   question                       takes      checks   answers   A        arrives        ...
agent       agent    agentCustomer   question                       takes      checks   answers   A        arrives        ...
agent       agent    agentCustomer   question                       takes      checks   answers   A        arrives        ...
agent       agent    agentCustomer   question                       takes      checks   answers   A        arrives        ...
agent       agent    agentCustomer   question                        takes      checks   answers   A        arrives       ...
agent       agent    agentCustomer   question                        takes      checks   answers   A        arrives       ...
agent       agent    agentCustomer   question                        takes      checks   answers   A        arrives       ...
agent       agent     agentCustomer   question                        takes      checks    answers   A        arrives     ...
agent       agent     agentCustomer   question                        takes      checks    answers   A        arrives     ...
agent       agent     agentCustomer   question                        takes      checks    answers   A        arrives     ...
Collaborative systems requireprogrammable performance testing                          ns         Web Applicatio
Amazon                  EC2Grinder   Grinder    Grinder   Grinder          Replica Cluster
Amazon                EC2Agents   Agents     Agents   SMS!         Replica Cluster
coordinated simulation              Amazon                EC2Agents   Agents     Agents   SMS!         Replica Cluster
coordinated simulation                                       e                             Unreliabl              Amazon  ...
coordinated simulation                                       e                             Unreliabl              Amazon  ...
coordinated simulation                                            e                                  Unreliabl            ...
Launching inAcquisition              New Markets
Engine Yardkgb Clusters                    multiple                  virtual slices                     multiple          ...
Engine Yardkgb Clusters  Load Balancer                       multiple                     virtual slices      App         ...
Engine Yard           kgb Clusters             Load Balancer                                           physical           ...
Engine Yard                       kgb Clusters                         Load BalancerCaching                               ...
Load BalancerApp   App              App             App    App        App            Database                         Data...
View           Queue                    Business                    Reports receive                         take      send...
!                               Pa inful           View           Queue                    Business                    Rep...
Launching in   Super BowlAcquisition              New Markets      TV Ad
Should we run the ad?
Should we run the ad? How should we try to survive the ad?
Should we run the ad? How should we try to survive the ad?     Optimize!
Instrumentation
Rails:
Rails:Database:
The kgb Wizards         Super Bowl TeamPaul Butcher          Matt NodderCraig Emery           Frederick CheungMatthew Rudy...
Partnersin Optimization
Lessons              Launching in   Super BowlAcquisition              New Markets      TV Ad
NewRelic Up Front
Performance Testing   in Agile Teams
when to shield the testerwhen to expose the tester
Plugs
paul@touchtype-online.com
Emberlight
matt.nodder@kgb.com
Stuff to read• my RailsInside Article• Performance Testing for Web Applications (MSDN) (Meier, Farre et al)(http://perftes...
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl
Upcoming SlideShare
Loading in …5
×

Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl

935 views

Published on

  • Be the first to comment

  • Be the first to like this

Performance Testing and Instrumenting the KGB SMS Service for the Super Bowl

  1. 1. Performance Testing & Instrumenting the KGB SMS Service for the Super Bowl J. Nathan Matias Cambridge Geek Night, 3 August 2010 Cambridge Union Society, Cambridge UK
  2. 2. Acquisition
  3. 3. Launching inAcquisition New Markets
  4. 4. Launching in Super BowlAcquisition New Markets TV Ad
  5. 5. Emberlight
  6. 6. KGB SMS Answers
  7. 7. To: 118118Text:Wot is thewether 4cast4 londontonite
  8. 8. To: 118118 118118:Text: WeatherWot is the forecast forwether 4cast London …4 londontonite
  9. 9. MX Rails Telecom ServerCustomers
  10. 10. MX Rails Rails Rails Telecom Server Server ServerCustomers Databases Specialized Servers
  11. 11. Agents Firefox Firefox Firefox Firefox Firefox Javascript http: Aethernet, EngineYard MX Rails Rails Rails Telecom Server Server ServerCustomers Databases Specialized Servers
  12. 12. Agents Firefox Firefox Firefox Firefox Firefox Javascript http: Aethernet, EngineYard MX Rails Rails Rails Telecom Server Server ServerCustomers Databases Specialized Servers
  13. 13. Agents Firefox Firefox Firefox Firefox Firefox Javascript http: Aethernet, EngineYard Firefox MX Rails Rails Rails Telecom Server Server Server FirefoxCustomers Databases Specialized Business Servers Reporting
  14. 14. Agents Firefox Firefox Firefox Firefox Firefox Javascript http: Aethernet, EngineYard Firefox MX Rails Rails Rails Telecom 7 web applications Server Server Server FirefoxCustomers Databases Specialized Business Servers Reporting
  15. 15. Agents Firefox Firefox Firefox Firefox Firefox Javascript over a thousand controller actions http: Aethernet, EngineYard Firefox MX Rails Rails Rails Telecom 7 web applications Server Server Server FirefoxCustomers Databases Specialized Business Servers Reporting
  16. 16. Agents Firefox Firefox Firefox Firefox Firefox Javascript over a thousand controller actions http: Aethernet, EngineYard Firefox MX Rails Rails Rails Telecom 7 web applications Server Server Server FirefoxCustomers over a thousand Databases Specialized Business models Servers Reporting
  17. 17. Agents Firefox Firefox Firefox Firefox Firefox Javascript over a thousand controller actions http: Aethernet, EngineYard Firefox MX Rails Rails Rails Telecom 7 web applications Server Server ServerSMS network Firefox ScalabilityCustomers over a thousand Databases Specialized Business models Servers Reporting
  18. 18. Agents Internet + Browser Firefox Scalability Firefox Firefox Firefox Firefox Javascript over a thousand controller actions http: Aethernet, EngineYard Firefox MX Rails Rails Rails Telecom 7 web applications Server Server ServerSMS network Firefox ScalabilityCustomers over a thousand Databases Specialized Business models Servers Reporting
  19. 19. Agents Internet + Browser Firefox Scalability Firefox Firefox Firefox Firefox Javascript over a thousand controller actions http: Aethernet, EngineYard Firefox MX Rails Rails Rails Complex Telecom 7 web applications Server Server ServerSMS network Business Firefox Scalability ReportsCustomers over a thousand Databases Specialized Business models Servers Reporting
  20. 20. Testing Software
  21. 21. Performance Testing Services
  22. 22. GUI Based Programmable screenshot viawww.lynchconsulting.com.au/blog/
  23. 23. GUI Based Programmable es Conte nt Websit screenshot viawww.lynchconsulting.com.au/blog/
  24. 24. GUI Based Programmable es s Conte nt Websit Web A pplication screenshot viawww.lynchconsulting.com.au/blog/
  25. 25. GUI Based Web HTTP serve webBrowser Request content A arrives Web HTTP serve web bs itesBrowser Request ntent We arrives content Co B screenshot via www.lynchconsulting.com.au/blog/
  26. 26. Customer question A arrives
  27. 27. agentCustomer question takes A arrives question
  28. 28. agent agentCustomer question takes checks A arrives question sources
  29. 29. agent agent agentCustomer question takes checks answers A arrives question sources question
  30. 30. agent agent agentCustomer question takes checks answers A arrives question sources questionCustomer followup A question
  31. 31. agent agent agentCustomer question takes checks answers A arrives question sources question agent 2Customer followup takes A question question
  32. 32. agent agent agentCustomer question takes checks answers A arrives question sources question agent 2 agent 2Customer followup takes checks A question question history
  33. 33. agent agent agentCustomer question takes checks answers A arrives question sources question agent 2 agent 2 agent 2Customer followup takes checks attaches A question question history conversation
  34. 34. agent agent agentCustomer question takes checks answers A arrives question sources question agent 2 agent 2 agent 2Customer followup takes checks attaches A question question history conversation secondCustomer half of A question
  35. 35. agent agent agentCustomer question takes checks answers A arrives question sources question agent 2 agent 2 agent 2Customer followup takes checks attaches A question question history conversation second agent 3Customer half of takes A question question
  36. 36. agent agent agentCustomer question takes checks answers A arrives question sources question agent 2 agent 2 agent 2Customer followup takes checks attaches A question question history conversation agent 4 takes conversation second agent 3Customer half of takes A question question
  37. 37. agent agent agentCustomer question takes checks answers A arrives question sources question agent 2 agent 2 agent 2Customer followup takes checks attaches A question question history conversation agent 4 takes conversation second agent 3 agent 3Customer half of takes attaches A question question question
  38. 38. agent agent agentCustomer question takes checks answers A arrives question sources question agent 2 agent 2 agent 2Customer followup takes checks attaches A question question history conversation agent 4 agent 4 takes receives conversation 2nd half second agent 3 agent 3Customer half of takes attaches A question question question
  39. 39. agent agent agentCustomer question takes checks answers A arrives question sources question agent 2 agent 2 agent 2Customer followup takes checks attaches A question question history conversation agent 4 agent 4 takes receives conversation 2nd half agent 4 second agent 3 agent 3 answersCustomer conversation half of takes attaches A question question question
  40. 40. Collaborative systems requireprogrammable performance testing ns Web Applicatio
  41. 41. Amazon EC2Grinder Grinder Grinder Grinder Replica Cluster
  42. 42. Amazon EC2Agents Agents Agents SMS! Replica Cluster
  43. 43. coordinated simulation Amazon EC2Agents Agents Agents SMS! Replica Cluster
  44. 44. coordinated simulation e Unreliabl Amazon reports! EC2Agents Agents Agents SMS! Replica Cluster
  45. 45. coordinated simulation e Unreliabl Amazon reports! EC2Agents Agents Agents SMS! Replica Cluster Real Pe rforma Metrics nce
  46. 46. coordinated simulation e Unreliabl Amazon reports! EC2Agents Agents Agents SMS! Replica Cluster Real Pe rforma Business Metrics nce Reports!
  47. 47. Launching inAcquisition New Markets
  48. 48. Engine Yardkgb Clusters multiple virtual slices multiple application servers Database per slice
  49. 49. Engine Yardkgb Clusters Load Balancer multiple virtual slices App multiple application servers Database per slice
  50. 50. Engine Yard kgb Clusters Load Balancer physical cluster node App App AppDatabase Database Database
  51. 51. Engine Yard kgb Clusters Load BalancerCaching physical cluster node URL App App AppRewriting (XSS) Database Database Database
  52. 52. Load BalancerApp App App App App App Database Database Database
  53. 53. View Queue Business Reports receive take sendquestion question answer unexpected behaviour
  54. 54. ! Pa inful View Queue Business Reports! receive take sendquestion question answer unexpected behaviour
  55. 55. Launching in Super BowlAcquisition New Markets TV Ad
  56. 56. Should we run the ad?
  57. 57. Should we run the ad? How should we try to survive the ad?
  58. 58. Should we run the ad? How should we try to survive the ad? Optimize!
  59. 59. Instrumentation
  60. 60. Rails:
  61. 61. Rails:Database:
  62. 62. The kgb Wizards Super Bowl TeamPaul Butcher Matt NodderCraig Emery Frederick CheungMatthew Rudy Jacobs Henry AddisonGary Swanson Ben SymonsRobert Heaney Tim Parish J. Nathan Matias
  63. 63. Partnersin Optimization
  64. 64. Lessons Launching in Super BowlAcquisition New Markets TV Ad
  65. 65. NewRelic Up Front
  66. 66. Performance Testing in Agile Teams
  67. 67. when to shield the testerwhen to expose the tester
  68. 68. Plugs
  69. 69. paul@touchtype-online.com
  70. 70. Emberlight
  71. 71. matt.nodder@kgb.com
  72. 72. Stuff to read• my RailsInside Article• Performance Testing for Web Applications (MSDN) (Meier, Farre et al)(http://perftestingguide.codeplex.com/)• Improving .NET Application Performance & Scalability (Meier, Vasireddy, et al)• Statistical Principles for the Performance Tester (Scott Barber)• Lessons from Giant Scale Services (Eric Brewer)• MySQL Performance Blog (Percona)• NewRelic Blog (New Relic)• Using the MySQL Query Profiler (mysql)

×