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
Domesticando dragoes com soluções escaláveis
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
abstractj
February 02, 2012
Programming
83
1
Share
Domesticando dragoes com soluções escaláveis
abstractj
February 02, 2012
More Decks by abstractj
See All by abstractj
When Java meets Ruby
abstractj
1
230
TorqueBox - Ultrapassando a fronteira entre Java e Ruby
abstractj
2
86
Torquebox - O melhor dos dois mundos
abstractj
2
85
Desenvolvimento Indolor com JQuery Mobile
abstractj
2
81
Paradigmas de programação funcional + objetos no liquidificador com scala
abstractj
3
110
J2ME Myth Busters
abstractj
1
82
Other Decks in Programming
See All in Programming
10年分の技術的負債、完済へ ― Claude Code主導のAI駆動開発でスポーツブルを丸ごとリプレイスした話
takuya_houshima
0
430
L’IA au service des devs : Anatomie d'un assistant de Code Review
toham
0
190
Everything Claude Code OSS詳細 — 5層構造の中身と導入方法
targe
0
160
Feature Toggle は捨てやすく使おう
gennei
0
410
Go_College_最終発表資料__外部公開用_.pdf
xe_pc23
0
110
KagglerがMixSeekを触ってみた
morim
0
370
Codex CLIのSubagentsによる並列API実装 / Parallel API Implementation with Codex CLI Subagents
takatty
2
820
生成 AI 時代のスナップショットテストってやつを見せてあげますよ(α版)
ojun9
0
340
AI活用のコスパを最大化する方法
ochtum
0
370
Goの型安全性で実現する複数プロダクトの権限管理
ishikawa_pro
2
1.4k
今年もTECHSCOREブログを書き続けます!
hiraoku101
0
220
20260313 - Grafana & Friends Taipei #1 - Kubernetes v1.36 的開發雜記:那些困在 Alpha 加護病房太久的 Metrics
tico88612
0
250
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Design in an AI World
tapps
0
190
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
260
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.2k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
Music & Morning Musume
bryan
47
7.1k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
68
38k
Transcript
Domesticando Dragões com soluções escaláveis @abstractj @qmx Monday, September 13,
2010
O cliente pediu um sistema Monday, September 13, 2010
Envio de SMS pela intranet + aplicacao web pra ver
detalhes da mensagem Monday, September 13, 2010
A cláusula “O sistema deve fazer tudo” Caso de uso,
2004 Monday, September 13, 2010
Teu chefe Monday, September 13, 2010
Fácil! Monday, September 13, 2010
Negócio fechado Monday, September 13, 2010
SEU EMO!!!! Monday, September 13, 2010
Sistema em piloto 10.000 tx/h = quase 3 tx/s Monday,
September 13, 2010
Bonito e Performático Monday, September 13, 2010
Cliente satisfeito Monday, September 13, 2010
A volta dos que não foram Monday, September 13, 2010
A cláusula “O sistema deve fazer tudo” Caso de uso,
2004 Monday, September 13, 2010
“Integraçãozinha” Monday, September 13, 2010
O legado Monday, September 13, 2010
Moleza! Monday, September 13, 2010
Legado = Mainframe Monday, September 13, 2010
Ouch! Monday, September 13, 2010
Mainframe Monday, September 13, 2010
Não gosta dos seus dados Monday, September 13, 2010
Não quer trabalhar pra você Monday, September 13, 2010
Não espera, você espera Monday, September 13, 2010
te odeia Monday, September 13, 2010
Mainframe não escala Monday, September 13, 2010
Mainframe não escala? Monday, September 13, 2010
Motivos técnicos Monday, September 13, 2010
FUUUUUU Monday, September 13, 2010
#medo? Monday, September 13, 2010
Ainda bem Monday, September 13, 2010
Sobrou! Monday, September 13, 2010
Flat files? Monday, September 13, 2010
batchizando? Monday, September 13, 2010
Filas de Mensageria! Monday, September 13, 2010
Problema resolvido! 3 tx/s Monday, September 13, 2010
A cláusula “O sistema deve fazer tudo” Caso de uso,
2004 Monday, September 13, 2010
Projeto piloto 3 tx/s = Bom Monday, September 13, 2010
Realidade: 1.5M tx/dia = 17tx/s Monday, September 13, 2010
Estamos devendo: ± 1.25M tx Monday, September 13, 2010
"Compra de R$ 5000,00 realizada com sucesso em 10/09/2010 03:56"
12/09/2010 15:30 Monday, September 13, 2010
Murphy: se você corria risco de fraude, ela aconteceu com
certeza Monday, September 13, 2010
Realidade? Monday, September 13, 2010
Pico de 200tx/s na hora do almoço Monday, September 13,
2010
E agora? Monday, September 13, 2010
Onde foi que eu errei? Monday, September 13, 2010
Você é culpado Monday, September 13, 2010
Na média, o ser humano tem uma bola Monday, September
13, 2010
Você perguntou pro seu cliente quais eram os horários de
pico?! Monday, September 13, 2010
Sua obrigação era medir!!! Monday, September 13, 2010
Sua aplicação escala?! Monday, September 13, 2010
Você vai até onde na vertical?! Monday, September 13, 2010
E na horizontal?! Monday, September 13, 2010
Você não está esquecendo de nada? Monday, September 13, 2010
Visualizar os detalhes da mensagem Monday, September 13, 2010
Ruby é lento? Monday, September 13, 2010
A culpa é de quem? Monday, September 13, 2010
Banco de dados? Monday, September 13, 2010
Massa de dados grande Monday, September 13, 2010
1.500.000 x 30 dias Monday, September 13, 2010
Em um mês 45 milhões de registros Monday, September 13,
2010
preciso guardar tudo isso? Monday, September 13, 2010
relacional pra quê? Monday, September 13, 2010
Cache? Monday, September 13, 2010
#fail Monday, September 13, 2010
Cache persistente? Monday, September 13, 2010
Redis key-value store on steroids Monday, September 13, 2010
O melhor dos dois mundos Monday, September 13, 2010
Dados bem guardados com SQL e com NoSQL Monday, September
13, 2010
Pesquisa direta no “banco de dados” 20tx/s Monday, September 13,
2010
Pesquisa passando pelo Redis: 200 tx/s Monday, September 13, 2010
Seus problemas acabaram! Monday, September 13, 2010
Obrigado! Monday, September 13, 2010