Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Gatling - GenevaJUG, 2012-11-27
Search
Nicolas Rémond
November 27, 2012
0
1.5k
Gatling - GenevaJUG, 2012-11-27
Nicolas Rémond
November 27, 2012
Tweet
Share
More Decks by Nicolas Rémond
See All by Nicolas Rémond
Gatling - Swiss JUG (Bern)
nremond
1
98
Featured
See All Featured
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
250
21k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
Designing Experiences People Love
moore
138
23k
Six Lessons from altMBA
skipperchong
27
3.5k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Ruby is Unlike a Banana
tanoku
97
11k
GitHub's CSS Performance
jonrohan
1030
460k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
720
Designing the Hi-DPI Web
ddemaree
280
34k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.3k
[RailsConf 2023] Rails as a piece of cake
palkan
52
4.9k
Transcript
How to stress test your application with Gatling ? Geneva,
November 27th 2012
First commit in june 2011 by S. Landelle and R.
Sertelon About 20k LOCs by 19 contributors Commiter since Spring 2012
Why a new stress tool ?
None
None
Issue n°1: High performance http://www.shopfbparts.com/catalog/nal-19201331_w.jpg
1 user = 1 thread
With 50 threads on a JVM http://www.ausmotive.com/F1/2010/British-GP-05.jpg
With 2000 threads on a JVM
Blocking IO
That's what your threads will do most of the time,
waiting ... http://www.flickr.com/photos/carlotancredi/3447589391
... and sleeping http://www.flickr.com/photos/maciejdakowicz/4770794503
Does it actually matter ?
None
Yes !
None
Issue n°2: Usability
Graphical Interface http://www.spacebio.uni-bonn.de/ahp/Parabel/Par_Images/240304-Cockpit_BIG.jpg Listen, it's actually not complicated ...
Issue n°3: Maintenance
What was this change about ?
Gatling can change all that ! http://static.lexpress.fr/medias/15/mai-68_124.jpg, copyright by AFP
Say hello to my little friend ... Version 1.3.5 (Released
November 23rd 2012)
> Actor model (Akka) > Async IO (Async-Http-Client + Netty)
Be asynchronous !
Scenario = Code = DSL http://gringocentralsanramon.blogspot.ch/2012/02/getting-published-writing-seminar-wed.html
Easy
Démo ! http://frizzlesworld.files.wordpress.com/2011/02/computer-cat.jpg
Use the rich DSL ... • .regex() / .css() /
.xpath() / jsonPath() • .find() / .findAll() / .count() • .is() / .in() / .not / .whatever • .doIf() / .repeat() / .during() / . asLongAs() • .randomSwitch() / .roundRobinSwitch() • .tryMax() / .exitBlockOnFail() • .feeder() : csv() / tsv() / jdbc()
... or write your own Scala code
... or try the recorder.
Démo ! http://frizzlesworld.files.wordpress.com/2011/02/computer-cat.jpg
Markov chains (Cycles are not supported so far...)
See also : .roundRobinSwitch()
Polling
Démo ! http://frizzlesworld.files.wordpress.com/2011/02/computer-cat.jpg
Integrations : > Maven Plugin > Maven archetype (run in
IDE) > Graphite live reporting
Coming soon : > Jenkins plugin > Requests grouping >
Websockets > Clustering > ...
@nremond @nremond http://github.com/excilys/gatling @GatlingTool http://www.gatling-tool.org