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 : Load Testing like a King
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
mestachs
May 09, 2014
Technology
19k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Gatling : Load Testing like a King
Gatling and rails app
mestachs
May 09, 2014
More Decks by mestachs
See All by mestachs
Ansible - Tighten your quality feedback loop
mestachs
1
21k
Betatech - Security for Dummies
mestachs
2
14k
techtalks-001-how-do-you-puppet
mestachs
1
190
How do you Puppet ?
mestachs
3
17k
Other Decks in Technology
See All in Technology
白金鉱業Meetup_Vol.24_「AIエージェントは分けるほど良い」は本当か? / Is it true that “the more you divide AI agents, the better”?
brainpadpr
1
300
2026TECHFRESH畢業分享會 - 葬送的通靈師:化系統與用戶雜訊成行動訊號
line_developers_tw
PRO
0
800
Android の公式 Skill / Android skills
yanzm
0
130
Oracle AI Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
6
1.5k
200個のGitHubリポジトリを横断調査したかった
icck
0
110
やさしいA2A入門
minorun365
PRO
12
1.7k
非定型業務をAI slackbotで自動化する ~ 社内要望を自動壁打ちするbotを作った ~/automating-ad-hoc-work-with-ai-slackbot
shibayu36
0
610
How Timee Delivers Day 1 Production Ready LLM Features
tomoyks
0
130
中期計画、2回作ってみた ~業務委託と正社員、両方の視点から~
demaecan
1
680
2026TECHFRESH畢業分享會 - Lightning Talk - 打造精準高效的 MCP 設計模式與測試實務
line_developers_tw
PRO
0
800
Claude Codeをどのように キャッチアップしているか
oikon48
5
3.7k
AIソロプレナー時代に2ヶ月で20人増員した事業創造会社の開発組織の話
miyatakoji
0
600
Featured
See All Featured
Utilizing Notion as your number one productivity tool
mfonobong
4
320
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
360
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
GraphQLとの向き合い方2022年版
quramy
50
15k
Building AI with AI
inesmontani
PRO
1
1.1k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
370
Visualization
eitanlees
152
17k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.1k
The SEO Collaboration Effect
kristinabergwall1
1
480
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4k
Crafting Experiences
bethany
1
180
Transcript
Load Testing like a
None
irb(main):017:0> gatling.load_test(rails_app) TypeError: can't convert Scala into Ruby from (irb):16:in
`load_test' from (irb):16 from bin/irb:12:in `<main>'
a DSL emulates real user behaviour val scn = scenario("Login")
.exec(http("My website") .get("/login") .headers(headers_1) .check( regex("""<meta content="(.*?)"name="csrf-token">""") .saveAs("auth_token")) .exec(http("Login") .post("/login") .headers(headers_5) .param("csrf-token", "${auth_token}") .param("username", "xxxx"))
None
Scalable Engine : Not a thread per user Actor based
concurrency Java 7 Asynchronous Good GC NIO framework
Executive summary
Average & StdDev : never again ! average of 1.2
seconds and standard deviation of 0.6 seconds
Average & StdDev : never again ! average of 1.2
seconds and standard deviation of 0.6 seconds Unhappy users are here
None
None
Gatling as a service
Root cause analysis
Need more data Infrastructure monitoring CloudWatch, collectd.org,... profiling/instrumentation/sampling in your
code or through agent à la NewRelic, home made with statsd,...
Query missing indexes select * from db select n+1 deadlock,
missing/bad cache Resource limits process / thread / connections pool garbage collection / network resource leak / cpu starvation Latency network external api rate limit isolate services
Opensource Nice DSL to emulates real user behaviour Scalable engine
Great reports/metrics by default C I - able Available “As a Service”
More on the subject https://flood.io/blog/13-stress-testing-jmeter-and-gatling https://flood.io/blog/14-getting-started-with-gatling https://flood.io/blog/27-socket-io-and-websockets-with-gatling http://mestachs.wordpress.com/2012/03/31/performance-when-average-is-not-enough/ http://gatling-tool.org/cheat-sheet/ http://maxdemarzi.com/2013/02/14/neo4j-and-gatling-sitting-in-a-tree-performance-t-e-s-t-ing/
http://laurent.bristiel.com/getting-started-with-gatling-for-stress-test/ https://github.com/maxdemarzi/neo_permissions/blob/master/performance/src/test/resources/simulations/RandomPermissions.scala#L18 https://github.com/excilys/gatling-hands-on/blob/master/gatling-hands-on-demo/src/test/scala/computerdatabase/Step10.scala https://wiki.jenkins-ci.org/display/JENKINS/Gatling+Plugin http://puppetlabs.com/blog/puppet-gatling-and-jenkins-together http://briancain.herokuapp.com/projects/puppetgatling http://blog.newrelic.com/2013/01/22/understanding-new-relic-queuing/ http://www.webperformance.com/library/tutorials/CalculateNumberOfLoadtestUsers/ http://www.slideshare.net/ZeroTurnaround/stephane-landelleblastyourappwithgatling https://twitter.com/GatlingTool http://blog.roddet.com/2013/06/gatling2-new-inject-api/
More on the subject http://jsebfranck.blogspot.be/2013/09/gatling-dynamic-parameters-example.html http://www.igvita.com/2014/03/26/why-is-my-cdn-slow-for-mobile-clients/ http://i.imgur.com/k0t1e.png http://www.eecs.berkeley.edu/~rcs/research/interactive_latency.html