SlideShare a Scribd company logo
1 of 155
Download to read offline
Load testing
Who is this dude?
Lindsay Holmwood
BULLETPROOF
I Run this thing
Have tried and failed many
times to implement effective
        load testing
A story
New project
Replacing a high-
 profile website
 (new infrastructure,
    new application)
1000
concurrent users
“We need 100%
   uptime”
Project starts
Requirements
   change
Deadlines
aren’t met
Performance testing?
      Fuck it!
  We’ll do it live!
Performance testing?
“You have one day”
Problem:
Treated as
WAterfall-esque
       QA
It’s a
non-functional
  requirement
WHY
Do we load test?
Capacity
planning
“Can the site deal
   with load?”
Defect
detection
“Is this code
going to cripple
    the site?”
Optimisation
“What happens if
 we change this
   Setting?”
Historical
 analysis
“Is the site
getting slower?”
Cache warming
“Prepare the
infrastructure
  for Failover”
WHY
Do we load test?
A combination of
  proactive &
Reactive reasons
A combination of
  proactive &
Reactive reasons
It’s a
non-functional
  requirement
Why
      does load testing
           FAIL?
(from a technical perspective)
How
not the
WHAT
TooL fetishism
Get bogged down
   in details
how the testing
infrastructure works
Micro
 vs
Macro
Business
  Does not care
about your tools
Business
cares About:
“Can the site deal
   with load?”
Recommendation:
Use tool with
lowest barrier
   TO entry
Blitz
Runs on AWS
Web form
Browser plugins
   Firefox, Chrome
REST API
API Clients
Ruby, Python, Java
   Node.JS, Perl
Common
Command Line
Excellent
documentation
   docs.blitz.io
Inexpensive
    250 concurrent users
over 60 second period == free
SPRINTS
   &
RUSHES
Let’s dive in!
Sign up @
 http://blitz.io/
$ gem install blitz
$ blitz help
Usage: blitz <command> <options>
                help - Display this help
      account:about - Show information about your account
           api:init - Validate and login with your API key
         couch:fuzz - Auto generate blitz tests from CouchDB
                curl - Run a sprint or a rush
          curl:help - Show help on sprint and rushing
         traceroute - Run traceroute remotely
    traceroute:help - Show help on traceroute
             version - Show the version of this Ruby gem
$ blitz api:init
# writes credentials to ~/.blitz/credentials
$ blitz curl:help

Usage: blitz curl <options> <url>

--user-agent    -A   <string>      User-Agent to send to server
--cookie        -b   name=<string> Cookie to send to the server (multiple)
--data          -d   <string>      Data to send in a PUT or POST request
--dump-header   -D   <file>        Print the request/response headers
--referer       -e   <string>      Referer URL
--help          -h                 Help on command line options
--header        -H   <string>      Custom header to pass to server
--pattern       -p   <s>-<e>:<d>   Ramp from s to e concurrent requests in d secs
--region        -r   <string>      california|oregon|virginia|singapore|ireland|japan
--status        -s   <number>      Assert on the HTTP response status code
--timeout       -T   <ms>          Wait time for both connect and responses
--user          -u   <user[:pass]> User and password for authentication
--request       -X   <string>      Request method to use (GET, HEAD, PUT, etc.)
--variable      -v   <string>      Define a variable to use
--verbose       -V                 Print the request/response headers
--tlsv1         -1                 Use TLSv1 (SSL)
--sslv2         -2                 Use SSLv2 (SSL)
--sslv3         -3                 Use SSLv3 (SSL)
$ blitz curl --region singapore --pattern 1-250:20 
     --timeout 10000 --verbose http://example.org/
user growth / time

$ blitz curl --region singapore --pattern 1-250:20 
     --timeout 10000 --verbose http://example.org/
user growth / time
      for AWS lag
$ blitz curl --region singapore --pattern 1-250:20 
     --timeout 10000 --verbose http://example.org/
user growth / time
         for AWS lag
$ blitz curl --region singapore --pattern 1-250:20 
     --timeout 10000 --verbose http://example.org/

rushing from singapore...

  Time    Users Response    Hits Timeouts   Errors   Hits/s Mbps
  2.5s       31 -1.000s        0        0        0
  8.3s      103   1.075s     146        0        9    50.53   0.88
 11.2s      140   0.406s     376        0        9    79.64   1.41
 14.1s      176   0.409s     682        0        9   105.24   1.86
 22.8s        0   0.417s    1552        0        9    15.57   0.27
--pattern 1-250:20
blitz calculates the
     growth automatically



--pattern 1-250:20
Sawtooth
--pattern 1-250:20,1-250:20,1-250:20
TV AD / Twittersplosion
 --pattern 200-5000:30,5000-400:60
Integrate
     with your
development cycle
VCS
        CI
Deploy automation
VCS
        CI
Deploy automation
git
post-receive hook
GitHub web hooks
Doesn’t take into
 account test
   failures
Is the code
 actually
 deployed?
VCS
        CI
Deploy automation
CRON JOB
JENKINS JOB
GREAT if you have
   a CI system
Runs tests
      but
Separate system
What if you’re making
infrastructure changes
 during a load test?
VCS
        CI
Deploy automation
Fabric
Capistrano
Run tests when
  you deploy
Use the same
  toolchain
Testing lives IN the app.
What about triggering
   load tests on
  infrastructure
      changes?
MVP
Just get
something
 working!
Problem:
No REporting
     :-(
THIS IS IT
rushing from singapore...

  Time   Users Response     Hits Timeouts   Errors   Hits/s Mbps
  2.5s      31 -1.000s         0        0        0
  8.3s     103   1.075s      146        0        9    50.53   0.88
 11.2s     140   0.406s      376        0        9    79.64   1.41
 14.1s     176   0.409s      682        0        9   105.24   1.86
 22.8s       0   0.417s     1552        0        9    15.57   0.27
SOL ON:
Optimisation
“What happens if
 we change this
   Setting?”
Historical
 analysis
“Is the site
getting slower?”
Showstopper?
...
$ gem install blitz

# ...

rushing from singapore...

  Time   Users Response     Hits Timeouts   Errors   Hits/s Mbps
  2.5s      31 -1.000s         0        0        0
  8.3s     103   1.075s      146        0        9    50.53   0.88
 11.2s     140   0.406s      376        0        9    79.64   1.41
 14.1s     176   0.409s      682        0        9   105.24   1.86
 22.8s       0   0.417s     1552        0        9    15.57   0.27
Can we duck
punch our way
  to success?
#!/usr/bin/env ruby
# load_test.rb

require 'blitz'

arguments = "--region singapore --pattern 1:250:60"
url       = "http://example.org/"
command   = "#{arguments} #{url}"

job     = Blitz::Curl.parse(command)
curl    = Blitz::Command::Curl.new
curl.rush(job)
# ruby load_test.rb

rushing from singapore...

  Time   Users Response     Hits Timeouts   Errors   Hits/s Mbps
  2.5s      31 -1.000s         0        0        0
  8.3s     103   1.075s      146        0        9    50.53   0.88
 11.2s     140   0.406s      376        0        9    79.64   1.41
 14.1s     176   0.409s      682        0        9   105.24   1.86
 22.8s       0   0.417s     1552        0        9    15.57   0.27
#!/usr/bin/env ruby
# load_test.rb

require 'blitz'

arguments = "--region singapore --pattern 1:250:60"
url       = "http://example.org/"
command   = "#{arguments} #{url}"

job     = Blitz::Curl.parse(command)
curl    = Blitz::Command::Curl.new
curl.rush(job)
#!/usr/bin/env ruby
# load_test.rb

require 'blitz'

arguments = "--region singapore --pattern 1:250:60"
url       = "http://example.org/"
command   = "#{arguments} #{url}"

job     = Blitz::Curl.parse(command)
curl    = Blitz::Command::Curl.new
curl.rush(job)
Blitz::Curl.parse(command)

         returns
    Blitz::Curl::Rush
#!/usr/bin/env ruby
# load_test.rb

require 'blitz'

arguments = "--region singapore --pattern 1:250:60"
url       = "http://example.org/"
command   = "#{arguments} #{url}"

job     = Blitz::Curl.parse(command)
curl    = Blitz::Command::Curl.new
curl.rush(job)
Blitz::Command::Curl#rush
initiates the test
   + outputs the test results


Blitz::Command::Curl#rush
#!/usr/bin/env ruby
# load_test.rb

require 'blitz'

arguments = "--region singapore --pattern 1:250:60"
url       = "http://example.org/"
command   = "#{arguments} #{url}"

job     = Blitz::Curl.parse(command)
curl    = Blitz::Command::Curl.new
curl.rush(job)

puts job.result.timeline.to_json
Produces muck
duck punch our
way to success
class Blitz::Curl::Rush
  class Point
    def to_json(*args)
      {
        'timestamp' => @timestamp,
        'duration' => @duration,
        'total'     => @total,
        'hits'      => @hits,
        'errors'    => @errors,
        'timeouts' => @timeouts,
        'volume'    => @volume,
        'txbytes'   => @txbytes,
        'rxbytes'   => @rxbytes,
        'steps'     => @steps,
      }.to_json
    end
  end

  # ...
# ...

  class Step
    def to_json(*args)
      {
        'duration' => @duration,
        'connect' => @connect,
        'errors'   => @errors,
        'timeouts' => @timeouts,
        'asserts' => @asserts,
      }.to_json
    end
  end
end
#!/usr/bin/env ruby
# load_test.rb

require 'blitz'

arguments = "--region singapore --pattern 1:250:60"
url       = "http://example.org/"
command   = "#{arguments} #{url}"

job     = Blitz::Curl.parse(command)
curl    = Blitz::Command::Curl.new
curl.rush(job)

puts job.result.timeline.to_json
{"start":1335694346,"finish":1335694367,"results":[{"timestamp":
2.502626,"duration":1.13912,"total":1,"hits":1,"errors":0,"timeouts":
0,"volume":2,"txbytes":258.0,"rxbytes":17810.0,"steps":[{"duration":
2.13912,"connect":0.260004,"errors":0,"timeouts":0,"asserts":0}]},
{"timestamp":5.016102,"duration":0.640047,"total":5,"hits":5,"errors":
0,"timeouts":0,"volume":4,"txbytes":1548.0,"rxbytes":90882.0,"steps":
[{"duration":1.640047,"connect":0.158944,"errors":0,"timeouts":
0,"asserts":0}]},{"timestamp":7.524594,"duration":0.639987,"total":
10,"hits":10,"errors":0,"timeouts":0,"volume":5,"txbytes":
3354.0,"rxbytes":182222.0,"steps":[{"duration":1.639987,"connect":
0.158999,"errors":0,"timeouts":0,"asserts":0}]},{"timestamp":
10.03388,"duration":0.63961,"total":20,"hits":20,"errors":0,"timeouts":
0,"volume":7,"txbytes":5418.0,"rxbytes":364902.0,"steps":[{"duration":
1.63961,"connect":0.158847,"errors":0,"timeouts":0,"asserts":0}]},
{"timestamp":12.543211,"duration":0.640421,"total":31,"hits":
31,"errors":0,"timeouts":0,"volume":9,"txbytes":9030.0,"rxbytes":
565850.0,"steps":[{"duration":1.640422,"connect":0.158767,"errors":
0,"timeouts":0,"asserts":0}]},{"timestamp":15.051705,"duration":
0.639894,"total":44,"hits":44,"errors":0,"timeouts":0,"volume":
10,"txbytes":12384.0,"rxbytes":803334.0,"steps":[{"duration":
1.639894,"connect":0.158794,"errors":0,"timeouts":0,"asserts":0}]},
{"timestamp":17.560136,"duration":-1.0,"total":44,"hits":44,"errors":
0,"timeouts":0,"volume":0,"txbytes":12384.0,"rxbytes":803334.0,"steps":
[{"duration":0.0,"connect":0.0,"errors":0,"timeouts":0,"asserts":0}]}]}
Do with as
you please
Here’s one I
prepared earlier..
...
You don’t have to
  set up a tool
But you have to
write reporting?
At least you
 have load
  testing?
It’s on the way..
http://support.blitz.io/discussions/questions/114-sharing-reports
Where to
from here?
Pull in data from
  other places
new relic
Ganglia/collectd
  Git commits
Github:
square/crossfilter
Don’t like Blitz?
SaaS
 Load impact
Browser mob
Open Source
    Tsung
   JMeter
Start Using
 something!
Low barrier of
 entry is key
Integrate with your
  existing dev tools
Questions?

More Related Content

What's hot

Performance testing jmeter
Performance testing jmeterPerformance testing jmeter
Performance testing jmeterBhojan Rajan
 
Performance Testing using LoadRunner
Performance Testing using LoadRunnerPerformance Testing using LoadRunner
Performance Testing using LoadRunnerKumar Gupta
 
Cloud Performance Testing with LoadRunner
Cloud Performance Testing with LoadRunnerCloud Performance Testing with LoadRunner
Cloud Performance Testing with LoadRunnerRichard Bishop
 
Advanced Load Runner
Advanced Load RunnerAdvanced Load Runner
Advanced Load Runnertelab
 
QA. Load Testing
QA. Load TestingQA. Load Testing
QA. Load TestingAlex Galkin
 
Performance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter introPerformance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter introMykola Kovsh
 
Performance testing using hp load runner
Performance testing using hp load runnerPerformance testing using hp load runner
Performance testing using hp load runnerReturn on Intelligence
 
Performance Testing With Loadrunner
Performance Testing With LoadrunnerPerformance Testing With Loadrunner
Performance Testing With Loadrunnervladimir zaremba
 
Performance Testing
Performance TestingPerformance Testing
Performance Testingsharmaparish
 
How to make a Load Testing with Visual Studio 2012
How to make a Load Testing with Visual Studio 2012How to make a Load Testing with Visual Studio 2012
How to make a Load Testing with Visual Studio 2012Chen-Tien Tsai
 
Getting start with Performance Testing
Getting start with Performance Testing Getting start with Performance Testing
Getting start with Performance Testing Yogesh Deshmukh
 
Performance Testing using LoadRunner - Kamran Khan [chromeis.com]
Performance Testing using LoadRunner - Kamran Khan [chromeis.com]Performance Testing using LoadRunner - Kamran Khan [chromeis.com]
Performance Testing using LoadRunner - Kamran Khan [chromeis.com]Kamran Khan
 
Load Testing Best Practices
Load Testing Best PracticesLoad Testing Best Practices
Load Testing Best PracticesApica
 
Performance Testing With Jmeter
Performance Testing With JmeterPerformance Testing With Jmeter
Performance Testing With JmeterAdam Goucher
 
Visual studio performance testing quick reference guide 3 6
Visual studio performance testing quick reference guide 3 6Visual studio performance testing quick reference guide 3 6
Visual studio performance testing quick reference guide 3 6Srimanta Kumar Sahu
 
Performance Testing Using VS 2010 - Part 1
Performance Testing Using VS 2010 - Part 1Performance Testing Using VS 2010 - Part 1
Performance Testing Using VS 2010 - Part 1Mohamed Tarek
 

What's hot (20)

Performance testing jmeter
Performance testing jmeterPerformance testing jmeter
Performance testing jmeter
 
Performance Testing using LoadRunner
Performance Testing using LoadRunnerPerformance Testing using LoadRunner
Performance Testing using LoadRunner
 
Cloud Performance Testing with LoadRunner
Cloud Performance Testing with LoadRunnerCloud Performance Testing with LoadRunner
Cloud Performance Testing with LoadRunner
 
QSpiders - Introduction to Performance Testing
QSpiders - Introduction to Performance TestingQSpiders - Introduction to Performance Testing
QSpiders - Introduction to Performance Testing
 
Advanced Load Runner
Advanced Load RunnerAdvanced Load Runner
Advanced Load Runner
 
Load Runner
Load RunnerLoad Runner
Load Runner
 
QA. Load Testing
QA. Load TestingQA. Load Testing
QA. Load Testing
 
Performance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter introPerformance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter intro
 
Performance testing using hp load runner
Performance testing using hp load runnerPerformance testing using hp load runner
Performance testing using hp load runner
 
Performance Testing With Loadrunner
Performance Testing With LoadrunnerPerformance Testing With Loadrunner
Performance Testing With Loadrunner
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
 
How to make a Load Testing with Visual Studio 2012
How to make a Load Testing with Visual Studio 2012How to make a Load Testing with Visual Studio 2012
How to make a Load Testing with Visual Studio 2012
 
Getting start with Performance Testing
Getting start with Performance Testing Getting start with Performance Testing
Getting start with Performance Testing
 
LoadRunner walkthrough
LoadRunner walkthroughLoadRunner walkthrough
LoadRunner walkthrough
 
Performance Testing using LoadRunner - Kamran Khan [chromeis.com]
Performance Testing using LoadRunner - Kamran Khan [chromeis.com]Performance Testing using LoadRunner - Kamran Khan [chromeis.com]
Performance Testing using LoadRunner - Kamran Khan [chromeis.com]
 
Load Testing Best Practices
Load Testing Best PracticesLoad Testing Best Practices
Load Testing Best Practices
 
Performance Testing With Jmeter
Performance Testing With JmeterPerformance Testing With Jmeter
Performance Testing With Jmeter
 
Visual studio performance testing quick reference guide 3 6
Visual studio performance testing quick reference guide 3 6Visual studio performance testing quick reference guide 3 6
Visual studio performance testing quick reference guide 3 6
 
JMeter Database Performace Testing - Keytorc Approach
JMeter Database Performace Testing - Keytorc ApproachJMeter Database Performace Testing - Keytorc Approach
JMeter Database Performace Testing - Keytorc Approach
 
Performance Testing Using VS 2010 - Part 1
Performance Testing Using VS 2010 - Part 1Performance Testing Using VS 2010 - Part 1
Performance Testing Using VS 2010 - Part 1
 

Viewers also liked

Microservices_vs_SOA
Microservices_vs_SOAMicroservices_vs_SOA
Microservices_vs_SOAYakov Liskoff
 
Load runner & win runner
Load runner & win runnerLoad runner & win runner
Load runner & win runnerHimanshu
 
Soap vs. rest - which is right web service protocol for your need?
Soap vs. rest -  which is right web service protocol for your need?Soap vs. rest -  which is right web service protocol for your need?
Soap vs. rest - which is right web service protocol for your need?Vijay Prasad Gupta
 
EMCW2015 - Containers vs VMs
EMCW2015 - Containers vs VMsEMCW2015 - Containers vs VMs
EMCW2015 - Containers vs VMsClinton Kitson
 
Spring Web Services: SOAP vs. REST
Spring Web Services: SOAP vs. RESTSpring Web Services: SOAP vs. REST
Spring Web Services: SOAP vs. RESTSam Brannen
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testingTharinda Liyanage
 
Microservices and SOA
Microservices and SOAMicroservices and SOA
Microservices and SOACapgemini
 
Containers and VMs and Clouds: Oh My. by Mike Coleman
Containers and VMs and Clouds: Oh My. by Mike ColemanContainers and VMs and Clouds: Oh My. by Mike Coleman
Containers and VMs and Clouds: Oh My. by Mike ColemanDocker, Inc.
 
Moving from Load Runner to Open Source: Increase Performance Test Coverage 10...
Moving from Load Runner to Open Source: Increase Performance Test Coverage 10...Moving from Load Runner to Open Source: Increase Performance Test Coverage 10...
Moving from Load Runner to Open Source: Increase Performance Test Coverage 10...CA Technologies
 
EMC World 2015 - The Devops Toolkit
EMC World 2015 - The Devops ToolkitEMC World 2015 - The Devops Toolkit
EMC World 2015 - The Devops ToolkitJonas Rosland
 
Why Docker
Why DockerWhy Docker
Why DockerdotCloud
 
Quick guide to plan and execute a load test
Quick guide to plan and execute a load testQuick guide to plan and execute a load test
Quick guide to plan and execute a load testduke.kalra
 
Docker 101: Introduction to Docker
Docker 101: Introduction to DockerDocker 101: Introduction to Docker
Docker 101: Introduction to DockerDocker, Inc.
 

Viewers also liked (16)

Load Runner
Load RunnerLoad Runner
Load Runner
 
Microservices_vs_SOA
Microservices_vs_SOAMicroservices_vs_SOA
Microservices_vs_SOA
 
Soap Vs Rest
Soap Vs RestSoap Vs Rest
Soap Vs Rest
 
Load runner & win runner
Load runner & win runnerLoad runner & win runner
Load runner & win runner
 
Soap vs. rest - which is right web service protocol for your need?
Soap vs. rest -  which is right web service protocol for your need?Soap vs. rest -  which is right web service protocol for your need?
Soap vs. rest - which is right web service protocol for your need?
 
EMCW2015 - Containers vs VMs
EMCW2015 - Containers vs VMsEMCW2015 - Containers vs VMs
EMCW2015 - Containers vs VMs
 
REST vs. SOAP
REST vs. SOAPREST vs. SOAP
REST vs. SOAP
 
Spring Web Services: SOAP vs. REST
Spring Web Services: SOAP vs. RESTSpring Web Services: SOAP vs. REST
Spring Web Services: SOAP vs. REST
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testing
 
Microservices and SOA
Microservices and SOAMicroservices and SOA
Microservices and SOA
 
Containers and VMs and Clouds: Oh My. by Mike Coleman
Containers and VMs and Clouds: Oh My. by Mike ColemanContainers and VMs and Clouds: Oh My. by Mike Coleman
Containers and VMs and Clouds: Oh My. by Mike Coleman
 
Moving from Load Runner to Open Source: Increase Performance Test Coverage 10...
Moving from Load Runner to Open Source: Increase Performance Test Coverage 10...Moving from Load Runner to Open Source: Increase Performance Test Coverage 10...
Moving from Load Runner to Open Source: Increase Performance Test Coverage 10...
 
EMC World 2015 - The Devops Toolkit
EMC World 2015 - The Devops ToolkitEMC World 2015 - The Devops Toolkit
EMC World 2015 - The Devops Toolkit
 
Why Docker
Why DockerWhy Docker
Why Docker
 
Quick guide to plan and execute a load test
Quick guide to plan and execute a load testQuick guide to plan and execute a load test
Quick guide to plan and execute a load test
 
Docker 101: Introduction to Docker
Docker 101: Introduction to DockerDocker 101: Introduction to Docker
Docker 101: Introduction to Docker
 

Similar to Load testing with Blitz

Jenkins Online Meetup - Automated SLI based Build Validation with Keptn
Jenkins Online Meetup - Automated SLI based Build Validation with KeptnJenkins Online Meetup - Automated SLI based Build Validation with Keptn
Jenkins Online Meetup - Automated SLI based Build Validation with KeptnAndreas Grabner
 
Non-blocking I/O, Event loops and node.js
Non-blocking I/O, Event loops and node.jsNon-blocking I/O, Event loops and node.js
Non-blocking I/O, Event loops and node.jsMarcus Frödin
 
Socket applications
Socket applicationsSocket applications
Socket applicationsJoão Moura
 
DevOps with Serverless
DevOps with ServerlessDevOps with Serverless
DevOps with ServerlessYan Cui
 
(ARC402) Deployment Automation: From Developers' Keyboards to End Users' Scre...
(ARC402) Deployment Automation: From Developers' Keyboards to End Users' Scre...(ARC402) Deployment Automation: From Developers' Keyboards to End Users' Scre...
(ARC402) Deployment Automation: From Developers' Keyboards to End Users' Scre...Amazon Web Services
 
AWS Lambda from the trenches
AWS Lambda from the trenchesAWS Lambda from the trenches
AWS Lambda from the trenchesYan Cui
 
fog or: How I Learned to Stop Worrying and Love the Cloud
fog or: How I Learned to Stop Worrying and Love the Cloudfog or: How I Learned to Stop Worrying and Love the Cloud
fog or: How I Learned to Stop Worrying and Love the CloudWesley Beary
 
Reactive Microservices with JRuby and Docker
Reactive Microservices with JRuby and DockerReactive Microservices with JRuby and Docker
Reactive Microservices with JRuby and DockerJohn Scattergood
 
DSLing your System For Scalability Testing Using Gatling - Dublin Scala User ...
DSLing your System For Scalability Testing Using Gatling - Dublin Scala User ...DSLing your System For Scalability Testing Using Gatling - Dublin Scala User ...
DSLing your System For Scalability Testing Using Gatling - Dublin Scala User ...Aman Kohli
 
How I Learned to Stop Worrying and Love the Cloud - Wesley Beary, Engine Yard
How I Learned to Stop Worrying and Love the Cloud - Wesley Beary, Engine YardHow I Learned to Stop Worrying and Love the Cloud - Wesley Beary, Engine Yard
How I Learned to Stop Worrying and Love the Cloud - Wesley Beary, Engine YardSV Ruby on Rails Meetup
 
fog or: How I Learned to Stop Worrying and Love the Cloud (OpenStack Edition)
fog or: How I Learned to Stop Worrying and Love the Cloud (OpenStack Edition)fog or: How I Learned to Stop Worrying and Love the Cloud (OpenStack Edition)
fog or: How I Learned to Stop Worrying and Love the Cloud (OpenStack Edition)Wesley Beary
 
Software as a Service workshop / Unlocked: the Hybrid Cloud 12th May 2014
Software as a Service workshop / Unlocked: the Hybrid Cloud 12th May 2014Software as a Service workshop / Unlocked: the Hybrid Cloud 12th May 2014
Software as a Service workshop / Unlocked: the Hybrid Cloud 12th May 2014Rackspace Academy
 
Real World Lessons on the Pain Points of Node.js Applications
Real World Lessons on the Pain Points of Node.js ApplicationsReal World Lessons on the Pain Points of Node.js Applications
Real World Lessons on the Pain Points of Node.js ApplicationsBen Hall
 
Devoxx Maroc 2015 HTTP 1, HTTP 2 and folks
Devoxx Maroc  2015 HTTP 1, HTTP 2 and folksDevoxx Maroc  2015 HTTP 1, HTTP 2 and folks
Devoxx Maroc 2015 HTTP 1, HTTP 2 and folksNicolas Martignole
 
Presto anatomy
Presto anatomyPresto anatomy
Presto anatomyDongmin Yu
 
PipelineAI + TensorFlow AI + Spark ML + Kuberenetes + Istio + AWS SageMaker +...
PipelineAI + TensorFlow AI + Spark ML + Kuberenetes + Istio + AWS SageMaker +...PipelineAI + TensorFlow AI + Spark ML + Kuberenetes + Istio + AWS SageMaker +...
PipelineAI + TensorFlow AI + Spark ML + Kuberenetes + Istio + AWS SageMaker +...Chris Fregly
 
Serverless in production, an experience report (FullStack 2018)
Serverless in production, an experience report (FullStack 2018)Serverless in production, an experience report (FullStack 2018)
Serverless in production, an experience report (FullStack 2018)Yan Cui
 
A Guide to Event-Driven SRE-inspired DevOps
A Guide to Event-Driven SRE-inspired DevOpsA Guide to Event-Driven SRE-inspired DevOps
A Guide to Event-Driven SRE-inspired DevOpsAndreas Grabner
 

Similar to Load testing with Blitz (20)

Jenkins Online Meetup - Automated SLI based Build Validation with Keptn
Jenkins Online Meetup - Automated SLI based Build Validation with KeptnJenkins Online Meetup - Automated SLI based Build Validation with Keptn
Jenkins Online Meetup - Automated SLI based Build Validation with Keptn
 
Otimizando seu projeto Rails
Otimizando seu projeto RailsOtimizando seu projeto Rails
Otimizando seu projeto Rails
 
Non-blocking I/O, Event loops and node.js
Non-blocking I/O, Event loops and node.jsNon-blocking I/O, Event loops and node.js
Non-blocking I/O, Event loops and node.js
 
Socket applications
Socket applicationsSocket applications
Socket applications
 
DevOps with Serverless
DevOps with ServerlessDevOps with Serverless
DevOps with Serverless
 
(ARC402) Deployment Automation: From Developers' Keyboards to End Users' Scre...
(ARC402) Deployment Automation: From Developers' Keyboards to End Users' Scre...(ARC402) Deployment Automation: From Developers' Keyboards to End Users' Scre...
(ARC402) Deployment Automation: From Developers' Keyboards to End Users' Scre...
 
AWS Lambda from the trenches
AWS Lambda from the trenchesAWS Lambda from the trenches
AWS Lambda from the trenches
 
fog or: How I Learned to Stop Worrying and Love the Cloud
fog or: How I Learned to Stop Worrying and Love the Cloudfog or: How I Learned to Stop Worrying and Love the Cloud
fog or: How I Learned to Stop Worrying and Love the Cloud
 
Reactive Microservices with JRuby and Docker
Reactive Microservices with JRuby and DockerReactive Microservices with JRuby and Docker
Reactive Microservices with JRuby and Docker
 
DSLing your System For Scalability Testing Using Gatling - Dublin Scala User ...
DSLing your System For Scalability Testing Using Gatling - Dublin Scala User ...DSLing your System For Scalability Testing Using Gatling - Dublin Scala User ...
DSLing your System For Scalability Testing Using Gatling - Dublin Scala User ...
 
How I Learned to Stop Worrying and Love the Cloud - Wesley Beary, Engine Yard
How I Learned to Stop Worrying and Love the Cloud - Wesley Beary, Engine YardHow I Learned to Stop Worrying and Love the Cloud - Wesley Beary, Engine Yard
How I Learned to Stop Worrying and Love the Cloud - Wesley Beary, Engine Yard
 
fog or: How I Learned to Stop Worrying and Love the Cloud (OpenStack Edition)
fog or: How I Learned to Stop Worrying and Love the Cloud (OpenStack Edition)fog or: How I Learned to Stop Worrying and Love the Cloud (OpenStack Edition)
fog or: How I Learned to Stop Worrying and Love the Cloud (OpenStack Edition)
 
Software as a Service workshop / Unlocked: the Hybrid Cloud 12th May 2014
Software as a Service workshop / Unlocked: the Hybrid Cloud 12th May 2014Software as a Service workshop / Unlocked: the Hybrid Cloud 12th May 2014
Software as a Service workshop / Unlocked: the Hybrid Cloud 12th May 2014
 
clara-rules
clara-rulesclara-rules
clara-rules
 
Real World Lessons on the Pain Points of Node.js Applications
Real World Lessons on the Pain Points of Node.js ApplicationsReal World Lessons on the Pain Points of Node.js Applications
Real World Lessons on the Pain Points of Node.js Applications
 
Devoxx Maroc 2015 HTTP 1, HTTP 2 and folks
Devoxx Maroc  2015 HTTP 1, HTTP 2 and folksDevoxx Maroc  2015 HTTP 1, HTTP 2 and folks
Devoxx Maroc 2015 HTTP 1, HTTP 2 and folks
 
Presto anatomy
Presto anatomyPresto anatomy
Presto anatomy
 
PipelineAI + TensorFlow AI + Spark ML + Kuberenetes + Istio + AWS SageMaker +...
PipelineAI + TensorFlow AI + Spark ML + Kuberenetes + Istio + AWS SageMaker +...PipelineAI + TensorFlow AI + Spark ML + Kuberenetes + Istio + AWS SageMaker +...
PipelineAI + TensorFlow AI + Spark ML + Kuberenetes + Istio + AWS SageMaker +...
 
Serverless in production, an experience report (FullStack 2018)
Serverless in production, an experience report (FullStack 2018)Serverless in production, an experience report (FullStack 2018)
Serverless in production, an experience report (FullStack 2018)
 
A Guide to Event-Driven SRE-inspired DevOps
A Guide to Event-Driven SRE-inspired DevOpsA Guide to Event-Driven SRE-inspired DevOps
A Guide to Event-Driven SRE-inspired DevOps
 

More from Lindsay Holmwood

Escalating complexity: DevOps learnings from Air France 447
Escalating complexity: DevOps learnings from Air France 447Escalating complexity: DevOps learnings from Air France 447
Escalating complexity: DevOps learnings from Air France 447Lindsay Holmwood
 
AA261: DevOps lessons in collaborative maintenance
AA261: DevOps lessons in collaborative maintenanceAA261: DevOps lessons in collaborative maintenance
AA261: DevOps lessons in collaborative maintenanceLindsay Holmwood
 
Islands: Puppet at Bulletproof Networks
Islands: Puppet at Bulletproof NetworksIslands: Puppet at Bulletproof Networks
Islands: Puppet at Bulletproof NetworksLindsay Holmwood
 
Latency: The Silent Monitoring System Killer
Latency: The Silent Monitoring System KillerLatency: The Silent Monitoring System Killer
Latency: The Silent Monitoring System KillerLindsay Holmwood
 
Rump - making Puppetmaster-less Puppet meaty
Rump - making Puppetmaster-less Puppet meatyRump - making Puppetmaster-less Puppet meaty
Rump - making Puppetmaster-less Puppet meatyLindsay Holmwood
 
Behaviour driven infrastructure
Behaviour driven infrastructureBehaviour driven infrastructure
Behaviour driven infrastructureLindsay Holmwood
 
Burn down the silos! Helping dev and ops gel on high availability websites
Burn down the silos! Helping dev and ops gel on high availability websitesBurn down the silos! Helping dev and ops gel on high availability websites
Burn down the silos! Helping dev and ops gel on high availability websitesLindsay Holmwood
 
Behaviour Driven Monitoring with cucumber-nagios
Behaviour Driven Monitoring with cucumber-nagiosBehaviour Driven Monitoring with cucumber-nagios
Behaviour Driven Monitoring with cucumber-nagiosLindsay Holmwood
 
Flapjack: rethinking monitoring for the cloud
Flapjack: rethinking monitoring for the cloudFlapjack: rethinking monitoring for the cloud
Flapjack: rethinking monitoring for the cloudLindsay Holmwood
 
Monitoring web application behaviour with cucumber-nagios
Monitoring web application behaviour with cucumber-nagiosMonitoring web application behaviour with cucumber-nagios
Monitoring web application behaviour with cucumber-nagiosLindsay Holmwood
 
Your own (little) gem: building an online business with Ruby
Your own (little) gem: building an online business with RubyYour own (little) gem: building an online business with Ruby
Your own (little) gem: building an online business with RubyLindsay Holmwood
 

More from Lindsay Holmwood (12)

Escalating complexity: DevOps learnings from Air France 447
Escalating complexity: DevOps learnings from Air France 447Escalating complexity: DevOps learnings from Air France 447
Escalating complexity: DevOps learnings from Air France 447
 
AA261: DevOps lessons in collaborative maintenance
AA261: DevOps lessons in collaborative maintenanceAA261: DevOps lessons in collaborative maintenance
AA261: DevOps lessons in collaborative maintenance
 
Islands: Puppet at Bulletproof Networks
Islands: Puppet at Bulletproof NetworksIslands: Puppet at Bulletproof Networks
Islands: Puppet at Bulletproof Networks
 
Latency: The Silent Monitoring System Killer
Latency: The Silent Monitoring System KillerLatency: The Silent Monitoring System Killer
Latency: The Silent Monitoring System Killer
 
Rump - making Puppetmaster-less Puppet meaty
Rump - making Puppetmaster-less Puppet meatyRump - making Puppetmaster-less Puppet meaty
Rump - making Puppetmaster-less Puppet meaty
 
Behaviour driven infrastructure
Behaviour driven infrastructureBehaviour driven infrastructure
Behaviour driven infrastructure
 
Burn down the silos! Helping dev and ops gel on high availability websites
Burn down the silos! Helping dev and ops gel on high availability websitesBurn down the silos! Helping dev and ops gel on high availability websites
Burn down the silos! Helping dev and ops gel on high availability websites
 
Behaviour Driven Monitoring with cucumber-nagios
Behaviour Driven Monitoring with cucumber-nagiosBehaviour Driven Monitoring with cucumber-nagios
Behaviour Driven Monitoring with cucumber-nagios
 
Flapjack: rethinking monitoring for the cloud
Flapjack: rethinking monitoring for the cloudFlapjack: rethinking monitoring for the cloud
Flapjack: rethinking monitoring for the cloud
 
Monitoring web application behaviour with cucumber-nagios
Monitoring web application behaviour with cucumber-nagiosMonitoring web application behaviour with cucumber-nagios
Monitoring web application behaviour with cucumber-nagios
 
Your own (little) gem: building an online business with Ruby
Your own (little) gem: building an online business with RubyYour own (little) gem: building an online business with Ruby
Your own (little) gem: building an online business with Ruby
 
Deploying Merb
Deploying MerbDeploying Merb
Deploying Merb
 

Recently uploaded

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusZilliz
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 

Recently uploaded (20)

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 

Load testing with Blitz