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
High-impact refactors keeping the lights on
Search
Kartones
September 23, 2017
Programming
68
0
Share
High-impact refactors keeping the lights on
Given at PyConES 2017, MadScalability & MindCamp 9.0
Kartones
September 23, 2017
More Decks by Kartones
See All by Kartones
Building Autonomous Agents with gym-retro
kartones
0
47
Python static typing with MyPy
kartones
0
71
Remote Work
kartones
0
98
Geospatial CSV Imports Hidden Complexity
kartones
0
56
Intro to GameBoy Development
kartones
0
100
Myths & The Real World of OpenSource Development
kartones
0
50
CartoDB Tech Intro
kartones
0
51
Copy Protection & Cracking History
kartones
0
130
Cómo ganar dinero con tus juegos online
kartones
1
120
Other Decks in Programming
See All in Programming
AWS re:Invent 2025の少し振り返り + DevOps AgentとBacklogを連携させてみた
satoshi256kbyte
3
160
Server-Side Kotlin LT大会 vol.18 [Kotlin-lspの最新情報と Neovimのlsp設定例]
yasunori0418
1
160
PHP で mp3 プレイヤーを実装しよう
m3m0r7
PRO
0
280
Claude Codeをカスタムして自分だけのClaude Codeを作ろう
terisuke
0
140
実用!Hono RPC2026
yodaka
2
230
Offline should be the norm: building local-first apps with CRDTs & Kotlin Multiplatform
renaudmathieu
0
220
Kingdom of the Machine
yui_knk
2
370
VueエンジニアがReactを触って感じた_設計の違い
koukimiura
0
180
PicoRuby for IoT: Connecting to the Cloud with MQTT
yuuu
2
600
AIベース静的検査器の偽陽性率を抑える工夫3選
orgachem
PRO
3
320
「話せることがない」を乗り越える 〜日常業務から登壇テーマをつくる思考法〜
shoheimitani
4
820
GitHubCopilotCLIをはじめよう.pdf
htkym
0
190
Featured
See All Featured
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
490
Balancing Empowerment & Direction
lara
6
1.1k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1k
The World Runs on Bad Software
bkeepers
PRO
72
12k
A Soul's Torment
seathinner
6
2.7k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
160
30 Presentation Tips
portentint
PRO
1
280
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
64
55k
Done Done
chrislema
186
16k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
720
Writing Fast Ruby
sferik
630
63k
Transcript
High-impact refactors keeping the lights on @Kartones Diego Muñoz
01. What 02. Why 03. How 04. When Agenda
What
What
What
Why
Why
Why
How
Mega structures How
Mega structures How
DB High-frequency selling How CMS API CRUD Current (simplified) flow
How Extend, not modify* API DB High-frequency selling CRUD CMS
REDIS EVENT BUS EVENT BUS APU *do modify if needed to allow extension
Patterns & Practices - Parallel change - Strangler How API
DB High-frequency selling CRUD CMS REDIS EVENT BUS EVENT BUS APU
How API DB High-frequency selling CRUD CMS REDIS EVENT BUS
EVENT BUS APU Patterns & Practices - Event Bus - Cursor-based - N writers/readers
How API DB High-frequency selling CRUD CMS REDIS EVENT BUS
EVENT BUS APU Patterns & Practices - Event Sourcing
How API DB High-frequency selling CRUD CMS REDIS EVENT BUS
EVENT BUS APU “Build exciting things with boring nice technologies” - Python 3.6 · Strongly typed (Mypy) · Dockerized - Redis with LUA - AWS Kinesis github.com/ticketea/pynesis
When
When Continous Iteration - No hard deadline - Desired: soon
:-)
Latest benchmark: ~4100 ops/sec - Single CPU core, 20k tickets,
50k concurrent users - Attacking internal API - Room for optimization When
Current status: - Free events - Paid events on their
way · Play safe (money involved!) · Lots of payment methods When
Release plan: - Now: Hack (Special payment method) - 1.0:
Feature Toggling When
Rollout plan 01. Canary: big free event 02. Dark launch:
on paid events 03. B/G: Gradual switch When
THE END Thanks! @Kartones