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.7k
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
110
Featured
See All Featured
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
440
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.7k
Being A Developer After 40
akosma
91
590k
For a Future-Friendly Web
brad_frost
182
10k
Unsuck your backbone
ammeep
671
58k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.2k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
780
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
410
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
170
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