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
Bring your website down with Gatling
Search
Kunal Dabir
November 15, 2014
Programming
0
110
Bring your website down with Gatling
Presentation from Vodqa workshop, Pune 2014
Kunal Dabir
November 15, 2014
Tweet
Share
More Decks by Kunal Dabir
See All by Kunal Dabir
Demystifying Gradle DSL
kdabir
0
470
Other Decks in Programming
See All in Programming
Jetpack Composeとデザインシステム
rmakiyama
0
230
Let's learn code review
riofujimon
2
640
ServerAction で Progressive Enhancement はどこまで頑張れるか? / progressive-enhancement-with-server-action
takefumiyoshii
6
510
一文字エイリアスのすすめ
fujimura
0
190
TypeScriptから始める VR生活
tamagokakeg
2
110
otelcol receiver 自作RTA / Pepabo Tech Conference #22 春のSREまつり
arthur1
0
690
哲学史とモデリング
tanakahisateru
2
410
RailsConf 2024: Riffing on Rails: sketch your way to better designed code
kaspth
1
210
WinActorの勉強を継続する方法
tamai_63
0
130
The Design of Everyday APIs - PyCon 2024
roguelynn
0
160
Long journey of Ruby standard library RubyKaigi 2024
andpad
2
190
mb_trim関数を作りました
youkidearitai
PRO
1
170
Featured
See All Featured
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.7k
What’s in a name? Adding method to the madness
productmarketing
PRO
17
2.7k
The Pragmatic Product Professional
lauravandoore
26
5.9k
Creatively Recalculating Your Daily Design Routine
revolveconf
211
11k
A Philosophy of Restraint
colly
197
16k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
67
14k
Statistics for Hackers
jakevdp
790
220k
Into the Great Unknown - MozCon
thekraken
15
1.1k
Building an army of robots
kneath
300
41k
VelocityConf: Rendering Performance Case Studies
addyosmani
321
23k
Making the Leap to Tech Lead
cromwellryan
125
8.6k
Building Adaptive Systems
keathley
32
1.9k
Transcript
Bring your website down with Gatling 1 / 22
Not quite literally :) 2 / 22
Why would we want to do that? 3 / 22
To Test Production-Readiness Can we meet SLA? Are we meeting
required throughput? like request/rec Will app sustain the normal & peak loads 4 / 22
Benchmarking CPU utilization Memory utilization Network bandwidth usage 5 /
22
Finding Performance Issues Like memory leaks Index missing (in DB)
Caching issues 6 / 22
Capacity Planning How many servers would I need What will
be configuration 7 / 22
Types Load testing Stress testing Spike testing Endurance/Soak and many
more... 8 / 22
Server-side performance vs Client-side performance 9 / 22
Client Side Performance DOM rendering time Network issues / latency
JavaScript execution time CSS/JS compression/optimiaztion Image optimization 10 / 22
Tools YSlow Google PageSpeed 11 / 22
Server Side Performance Resource consumption Throughput and a lot more...
12 / 22
What are the options? 13 / 22
Command Line Utilities Shell script with curl/wget fighting a battle
with needle Apache bench good for very simple use cases Seige bit more sophisticated than AB but not full blown 14 / 22
More Programmable Solutions Locust python JMeter java but more gui
centric Gatling JVM with scala DSL 15 / 22
User Journeys Tool should be able to emulate real users
with realistic load Example: 1. I login, 2. I browse for an item 3. I add it to my cart 4. I proceed to checkout 5. I pay 6. I logout 16 / 22
Scenarios User regestration will happens less frequently than order checkout
Should test accordingly With desired load pattern 17 / 22
Complexities Sessions Cookies user journeys reporting/insights into key metrices 18
/ 22
Metrices Requests request/sec distribution of urls Response time 90%ile, 95%ile
avg/mean min/max Result failed vs passed vs timed out status codes Users active sessions 19 / 22
Demo Clone the gatling-stater project 20 / 22
Thank You @kdabir github.com/kdabir 21 / 22
References http://msdn.microsoft.com/en-us/library/bb924356.aspx https://github.com/kdabir/gatling-starter http://gatling.io 22 / 22