+ All Categories
Home > Documents > Gatling Tool in Action at Devoxx 2012

Gatling Tool in Action at Devoxx 2012

Date post: 05-Dec-2014
Category:
Upload: slandelle
View: 3,114 times
Download: 1 times
Share this document with a friend
Description:
 
30
Blast your web app with Gatling Romain Sertelon Java Consultant eBusiness Information @BluePyth Stéphane Landelle CTO eBusiness Information @slandelle
Transcript
Page 1: Gatling Tool in Action at Devoxx 2012

Blast your web app with Gatling

Romain SertelonJava Consultant

eBusiness Information

@BluePyth

Stéphane LandelleCTO

eBusiness Information

@slandelle

Page 2: Gatling Tool in Action at Devoxx 2012

Yet Another Stress Tool

JMeter, Grinder, Tsung, LoadUI,

LoadRunner, Neoload…

Page 3: Gatling Tool in Action at Devoxx 2012

High PerformanceIssue #1

http://www.shopfbparts.com/catalog/nal-19201331_w.jpg

Page 4: Gatling Tool in Action at Devoxx 2012

1 user = 1 thread

Page 5: Gatling Tool in Action at Devoxx 2012

With 50 threads on a JVM

Page 6: Gatling Tool in Action at Devoxx 2012

With 2000 threads on a JVM

Page 7: Gatling Tool in Action at Devoxx 2012

Blocking I/O

Page 8: Gatling Tool in Action at Devoxx 2012

Threads? Waiting…

Page 9: Gatling Tool in Action at Devoxx 2012

… and sleeping

Page 10: Gatling Tool in Action at Devoxx 2012

Is that a real problem?

Page 11: Gatling Tool in Action at Devoxx 2012

Can you trust your results?

JMeter 2.8 perf test, expecting 300 tr/sec

Page 12: Gatling Tool in Action at Devoxx 2012

UsabilityIssue #2

Page 13: Gatling Tool in Action at Devoxx 2012

Listen, it's not that complicated...

Graphical User Interface

Page 14: Gatling Tool in Action at Devoxx 2012

MaintainabilityIssue #3

Page 15: Gatling Tool in Action at Devoxx 2012

What was this change about?

Page 16: Gatling Tool in Action at Devoxx 2012

Gatling can change all that!

http://static.lexpress.fr/medias/15/mai-68_124.jpg, copyright by AFP

Page 17: Gatling Tool in Action at Devoxx 2012

Version 1.3.4Released October 2012

Say hello to my little friend…

Page 18: Gatling Tool in Action at Devoxx 2012

Be asynchronous, embrace the actor model

Page 19: Gatling Tool in Action at Devoxx 2012

Use non-blocking I/O

• Async HTTP Client

• Netty

Page 20: Gatling Tool in Action at Devoxx 2012

Scenario = Code (Scala) = DSL

http://gringocentralsanramon.blogspot.ch/2012/02/getting-published-writing-seminar-wed.html

Page 21: Gatling Tool in Action at Devoxx 2012

Easy

Page 22: Gatling Tool in Action at Devoxx 2012

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 Tool in Action at Devoxx 2012

… or write your own Scala code…

Page 24: Gatling Tool in Action at Devoxx 2012

…or use the Recorder

Page 25: Gatling Tool in Action at Devoxx 2012

Integrations• Maven Plugin

• Maven archetype (run in IDE)

• Graphite live reporting

Page 26: Gatling Tool in Action at Devoxx 2012

Coming soon…

• Jenkins Plugin

• Requests Grouping

• Websockets, JDBC…

• Clustering

Page 27: Gatling Tool in Action at Devoxx 2012

Demo

Page 28: Gatling Tool in Action at Devoxx 2012

Really efficient?

Jmeter perf test run with Gatling, expecting 300 tr/sec

Page 29: Gatling Tool in Action at Devoxx 2012

http://gatling-tool.org

https://github.com/excilys/

gatling

@GatlingTool

https://github.com/slandelle

@slandelle

https://github.com/BluePyth

@BluePyth

Page 30: Gatling Tool in Action at Devoxx 2012

Q&A


Recommended