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
Devour The Cloud With Locust Swarms - Hands On ...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
stevenjackson
January 09, 2018
Technology
86
0
Share
Devour The Cloud With Locust Swarms - Hands On Load Testing
Given at CodeMash 2.0.1.8
stevenjackson
January 09, 2018
More Decks by stevenjackson
See All by stevenjackson
Death By Specification
stevenjackson
1
42
Looking for Failure
stevenjackson
0
140
Better Software Through Shared Understanding
stevenjackson
0
180
Going to Eleven
stevenjackson
0
86
A Locust Storm Is A Good Thing!
stevenjackson
0
140
Lambda Image Resizing
stevenjackson
0
83
Faliing Your Way To Success
stevenjackson
0
93
Death By Specification(cukeup)
stevenjackson
0
150
Failure Lightning Talk
stevenjackson
0
98
Other Decks in Technology
See All in Technology
Revisiting [CLS] and Patch Token Interaction in Vision Transformers
yu4u
0
350
こんなアーキテクチャ図はいやだ / Anti-pattern in AWS Architecture Diagrams
naospon
1
440
AI時代における技術的負債への取り組み
codenote
1
1.4k
最近の技術系の話題で気になったもの色々(IoT系以外も) / IoTLT 花見予定会(たぶんBBQ) @都立潮風公園バーベキュー広場
you
PRO
1
220
Code Interpreter で、AIに安全に コードを書かせる。
yokomachi
0
7k
インターネットの技術 / Internet technology
ks91
PRO
0
200
AI時代にデータ基盤が持つべきCapabilityを考える + Snowflake Data Superheroやっていき宣言 / Considering the Capabilities Data Platforms Should Have in the AI Era + Declaration of Commitment as a Snowflake Data Superhero
civitaspo
0
130
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
10
78k
レビューしきれない?それは「全て人力でのレビュー」だからではないでしょうか
amixedcolor
0
300
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4.3k
弁護士ドットコム株式会社 エンジニア職向け 会社紹介資料
bengo4com
1
140
ネットワーク運用を楽にするAWS DevOps Agent活用法!! / 20260421 Masaki Okuda
shift_evolve
PRO
2
200
Featured
See All Featured
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
170
Reality Check: Gamification 10 Years Later
codingconduct
0
2.1k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.4k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Practical Orchestrator
shlominoach
191
11k
Building an army of robots
kneath
306
46k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
220
The Limits of Empathy - UXLibs8
cassininazir
1
300
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
370
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
320
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
210
BBQ
matthewcrist
89
10k
Transcript
Devour the Cloud Do you have an AWS Account?
nick @stevejxsn @nickbarendt # codemash #devour-the-cloud
[email protected]
[email protected]
Nick Barendt
Steve Jackson
None
Setup AMIs http://bit.do/devour-aws
AMIs Saleor Locust ami-da98c7a0 ami-a59bc4df You can also search for
“CM2018”
If you leave early…. Remember to stop/terminate your AWS instances!
Explore Saleor (our system under test today)
What is Load Testing?
It’s often pictured this way...
None
Load Testing simulates the experience of “many” concurrent users What
is Load Testing?
Load Testing is not about optimizing the per user experience
Most test tools are bad at Assets Javascript
None
None
None
Needing load testing is a good problem
It’s not hard…. Resource Planning Performance Regressions Architecture Changes
Ok, so what are we focusing on?
Key Question: How many users can I have on my
site before things break?
Key Question: How many users can I add before performance
becomes unacceptable?
None
None
Close Enough
None
It’s About Tradeoffs
None
Why Locust?
Simple When will this endpoint fall over?
Record/Playback Easy to get Started
Programmatic Simple -> Complex
DSL
Scales Horizontally
Scales Horizontally
None
Simple Web UI
None
User Signup http://bit.do/devour-signup
Buy! http://bit.do/devour-buy
User Funnel
None
None
None
None
100% Returning Users (20%) Find Cart Buy 80% 75%
25% 100% New Users (80%) Visit Cart Buy 97% 50%
Find
25% 100% User Funnel Visit Cart Buy 97% 50% Find
100% Find Cart Buy 80% 75% New 80% Old 20%
Weigh Tasks http://bit.do/devour-funnel
Find a Baseline
None
Identify Bottleneck
None
None
?
None
Saleor Architecture
Eliminate Bottleneck
Database Laziness Index Connection Pooling
Caching
Async
Current Architecture
Architecture with Caching
View Caching http://bit.do/devour-caching
Find new Baseline
Next Steps Choose Your Own Adventure http://bit.do/devour-advanced
Thanks! REMEMBER TO SHUT DOWN YOUR MACHINES! @stevejxsn @nickbarendt