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
Crónica de una escala anunciada
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Damian Schenkelman
June 23, 2016
Programming
200
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Crónica de una escala anunciada
Damian Schenkelman
June 23, 2016
More Decks by Damian Schenkelman
See All by Damian Schenkelman
Identidad en Web3
dschenkelman
0
350
Demo Identidad en Web3
dschenkelman
1
190
Deep Dive Into Google Zanzibar and its Concepts for Authorization Scenarios
dschenkelman
1
1.4k
Authorization is on the rise. What if there was an API for it?
dschenkelman
0
150
All About AuthZ
dschenkelman
1
460
Evolving Auth0's architecture: From 0 to 2.5+ billion logins per month in 5 years
dschenkelman
1
1.3k
Remote work at Auth0
dschenkelman
0
200
El camino a SRE
dschenkelman
0
210
IDaaS at Scale - From 0 to 2.5B+ logins/month (Auth0 Webinar)
dschenkelman
0
110
Other Decks in Programming
See All in Programming
PHPだって関数型したい 〜できること、できないこと〜 / fp-in-php
jsoizo
0
190
Developing with AI Agents — Codex, Claude Code & Cowork Practical Guide
x5gtrn
PRO
0
1.4k
音楽のための関数型プログラミング言語mimiumにおける多段階計算の活用
tomoyanonymous
1
310
【SRE NEXT 2026 Lunch Session】一人目専任SREの立ち上げを加速する ― AIと進めたオンボーディングで2分を0.04秒にした話
pkshadeck
PRO
0
2.3k
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
1
160
言語を使う側から、作る側へ。 自作 Lisp で得た新たな気づき。
andpad
0
110
エンジニアと一緒にテストコードの設計と実装を改善した話
mototakatsu
0
260
霧の中の代数的エフェクト
funnyycat
1
340
自作OSでスライド発表する
uyuki234
1
3.8k
なぜ関数型プログラミングで「型」と「証明」が語られるのか #fp_matsuri
kajitack
3
800
エンジニア向け会社紹介/Findy Company Profile
findyinc
6
360k
共通化で考えるべきは、実装より公開する型だった
codeegg
0
210
Featured
See All Featured
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Design in an AI World
tapps
1
260
Ethics towards AI in product and experience design
skipperchong
2
330
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
420
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
330
For a Future-Friendly Web
brad_frost
183
10k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
220
Visualization
eitanlees
152
17k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
600
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Typedesign – Prime Four
hannesfritz
42
3.1k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
300
Transcript
Crónica de una escala anunciada npm i dschenkelman
Building a product
Demand
Stabilize
Auth API Identity provider DB Scenario Client
Expected response times
Actual response times
Admit the problem
The problem
Flame graphs
T-shirt time
Password Hashing app.post('/authenticate', (req, res) => { // fetch the
user by req.username from db db.users.findOne({ email: req.body.email }, (err, user) => { ... // compare bcrypt for req.password to db hash const success = bcrypt.compare(req.body.password, user.passwordHash); res.send(success ? 200 : 401); }); });
Scale
Faster Hash
Caching
Scale up
Multiple IdP instances ELB IdP IdP IdP IdP
BaaS app.use('/login', (req, res) => { // fetch the user
by req.username from db db.users.findOne({ email: req.body.email }, (err, user) => { ... // compare bcrypt for req.password to db hash baas.compare(req.body.password, user.passwordHash).then((e success) => { res.send(err || !success ? 401 : 200); }); }); });
Auto Scaling Identity provider ELB BaaS BaaS BaaS BaaS
Cost comparison Price / (1M req) #req per sec /
vCPU t2-micro $0.36 10.00 t2-medium $0.76 9.50 c4-large $1.53 10.00 c3-8xlarge $1.64 8.88
Fail gracefully
Bye
Links • http://security.stackexchange.com/a/83382 • http://www.brendangregg.com/FlameGraphs/ cpuflamegraphs.html • https://github.com/thlorenz/v8-perf/issues/4 • https://github.com/auth0/node-baas
• http://docs.aws.amazon.com/AutoScaling/latest/ DeveloperGuide/US_SetUpASLBApp.html • https://gist.github.com/trevnorris/9616784
Thanks https://github.com/dschenkelman/bcrypt-sample @dschenkelman npm i dschenkelman