![Page 1: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/1.jpg)
Faites tomber la foudre
Stéphane LandelleCTO
eBusiness Information
@slandelle
![Page 2: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/2.jpg)
Yet Another Stress Tool
JMeter, Grinder, Tsung, LoadUI,
LoadRunner, Neoload…
![Page 3: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/3.jpg)
High PerformanceIssue #1
http://www.shopfbparts.com/catalog/nal-19201331_w.jpg
![Page 4: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/4.jpg)
1 user = 1 thread
![Page 5: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/5.jpg)
With 50 threads on a JVM
![Page 6: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/6.jpg)
With 2000 threads on a JVM
![Page 7: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/7.jpg)
Blocking I/O
![Page 8: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/8.jpg)
Threads? Waiting…
![Page 9: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/9.jpg)
… and sleeping
![Page 10: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/10.jpg)
Is that a real problem?
![Page 11: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/11.jpg)
Can you trust your results?
JMeter 2.8 perf test, expecting 300 tr/sec
![Page 12: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/12.jpg)
UsabilityIssue #2
![Page 13: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/13.jpg)
Listen, it's not that complicated...
Graphical User Interface
![Page 14: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/14.jpg)
MaintainabilityIssue #3
![Page 15: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/15.jpg)
What was this change about?
![Page 16: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/16.jpg)
Gatling can change all that!
http://static.lexpress.fr/medias/15/mai-68_124.jpg, copyright by AFP
![Page 17: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/17.jpg)
Version 1.3.5Released November 2012
Say hello to my little friend…
![Page 18: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/18.jpg)
Be asynchronous, embrace the actor model
![Page 19: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/19.jpg)
Use non-blocking I/O
• Async HTTP Client
• Netty
![Page 20: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/20.jpg)
Scenario = Code (Scala) = DSL
![Page 21: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/21.jpg)
Easy
![Page 22: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/22.jpg)
Use the rich DSL…Checks
• regex / css / xpath / jsonPath
• find / findAll / count
• is / in / not / whatever
Structures
• doIf / repeat / during / asLongAs
• randomSwitch / roundRobinSwitch
Error handling
• tryMax / exitBlockOnFail
Feeders
• csv / tsv / jdbc
![Page 23: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/23.jpg)
… or write your own Scala code…
![Page 24: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/24.jpg)
…or use the Recorder
![Page 25: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/25.jpg)
Integrations• Maven Plugin
• Maven archetype (run in IDE)
• Graphite live reporting
![Page 26: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/26.jpg)
Coming soon…
• Jenkins Plugin
• Requests Grouping
• Websockets, JDBC…
• Clustering
![Page 27: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/27.jpg)
Demo
![Page 28: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/28.jpg)
Really efficient?
Jmeter perf test run with Gatling, expecting 300 tr/sec
![Page 29: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/29.jpg)
http://gatling-tool.org
https://github.com/excilys/
gatling
@GatlingTool
https://github.com/slandelle
@slandelle
![Page 30: Gatling : Faites tomber la foudre sur votre serveur ! (Stéphane Landelle)](https://reader035.vdocument.in/reader035/viewer/2022062405/5560b59ad8b42af43b8b498d/html5/thumbnails/30.jpg)
Q&A