Post on 29-Jun-2015
How to stress test your application with Gatling ?
Lausanne, September 13th 2012
Why a new tool ?
Issue n°1:High performance
http://www.shopfbparts.com/catalog/nal-19201331_w.jpg
1 user = 1 thread
With 50 threads on a JVMhttp://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
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 ?
Listen to us, Gatling can change all that !
http://static.lexpress.fr/medias/15/mai-68_124.jpg, copyright by AFP
Say hello to my little friend ...
Be asynchronous, embrace the actors model
Don't use blocking IO
> Netty > Async-Http-Client
Scenario= Code= DSL
http://gringocentralsanramon.blogspot.ch/2012/02/getting-published-writing-seminar-wed.html
version 1.3.0
Expected by the end of September 2012
All examples will be based on this version
Easy
Démo !
http://frizzlesworld.files.wordpress.com/2011/02/computer-cat.jpg
Feeling lazy? Try the recorder.
Démo !
http://frizzlesworld.files.wordpress.com/2011/02/computer-cat.jpg
Powerful : write your own Scala code
But, many used case covered out-of-the-box by the DSL
● .regex() / .css() / .xpath() / jsonPath()● .find() / .findAll() / .count()● .is() / .in() / .not / .whatever
● .doIf() / .repeat() / .during() / .asLongAs()
● .tryMax() / .exitBlockOnFail()● .randomSwitch() / .roundRobinSwitch()
● .feeder() : csv() / tsv() / jdbc()
Polling
Markov chains
(Cycles are not supported so far...)
See also : .roundRobinSwitch()
Démo !
http://frizzlesworld.files.wordpress.com/2011/02/computer-cat.jpg
Coming soon : > Live reporting in Graphite
> Jenkins reports> Clustering
Fact sheet● First commit in june 2011● Created by S. Landelle and R. Sertelon● About 20k LOCs● 19 persons have contributed to the project
● 2000 downloads since the beginning● 500 downloads of Gatling 1.2.5
http://gatling-tool.orghttp://github.com/excilys/gatlinghttp://twitter.com/GatlingTool
http://github.com/nirehttp://twitter.com/nremond