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
L'architettura di Stack Overflow, {codemotion} ...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Marco Cecconi
November 29, 2014
Programming
690
0
Share
L'architettura di Stack Overflow, {codemotion} Milano 2014
L'architettura di Stack Overflow, presentata a {codemotion} Milano in Novembre 2014.
Marco Cecconi
November 29, 2014
More Decks by Marco Cecconi
See All by Marco Cecconi
Stack Overflow - It's all about performance - Codemotion Rome 2015
sklivvz
0
890
Stack Overflow - it's all about performance
sklivvz
2
720
Guerrilla Programming - code.talks 2014
sklivvz
0
690
The Architecture of Stack Overflow - Merge Lisbon 2014
sklivvz
4
420
The Architecture of Stack Overflow - Info Share 2014
sklivvz
3
660
The Architecture of Stack Overflow - Dev Sum 2014
sklivvz
2
670
The Architecture of Stack Overflow - QCon Japan 2014
sklivvz
2
250
The Architecture of StackOverflow - QCon China 2014
sklivvz
1
270
The Localization of Stack Overflow- QCon China 2014
sklivvz
1
420
Other Decks in Programming
See All in Programming
Make GenAI Production-Ready with Kubernetes Patterns
bibryam
0
110
PDI: Como Alavancar Sua Carreira e Seu Negócio
marcelgsantos
0
120
Symfonyの特性(設計思想)を手軽に活かす特性(trait)
ickx
0
130
Laravel Nightwatchの裏側 - Laravel公式Observabilityツールを支える設計と実装
avosalmon
1
330
仕様漏れ実装漏れをなくすトレーサビリティAI基盤のご紹介
orgachem
PRO
9
5.6k
Feature Toggle は捨てやすく使おう
gennei
0
570
Xdebug と IDE による デバッグ実行の仕組みを見る / Exploring-How-Debugging-Works-with-Xdebug-and-an-IDE
shin1x1
0
360
メッセージングを利用して時間的結合を分離しよう #phperkaigi
kajitack
3
580
[PHPerKaigi 2026]PHPerKaigi2025の企画CodeGolfが最高すぎて社内で内製して半年運営して得た内製と運営の知見
ikezoemakoto
0
340
10年分の技術的負債、完済へ ― Claude Code主導のAI駆動開発でスポーツブルを丸ごとリプレイスした話
takuya_houshima
0
2.4k
Rethinking API Platform Filters
vinceamstoutz
0
11k
PHPのバージョンアップ時にも役立ったAST(2026年版)
matsuo_atsushi
0
300
Featured
See All Featured
Building the Perfect Custom Keyboard
takai
2
730
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
Visualization
eitanlees
150
17k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
110
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
670
The Language of Interfaces
destraynor
162
26k
Making the Leap to Tech Lead
cromwellryan
135
9.8k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
190
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
170
Transcript
Marco Cecconi @sklivvz http://sklivvz.com
ARCHITETTURA? CHE E’?
None
None
Cresciuti a 130 siti (+20%) Da 56º a 44º network
più visitato al mondo (-12)
None
*source: Quantcast, Alexa ~50º network per traffico* (fra imdb.com
e t.co)
None
None
None
None
None
None
None
None
None
None
None
None
None
http://stackexchange.com/performance
Agile
BAT!CAVERNA Ciclo scrivi-compila-testa sul computer di casa Richieste feature
DEV.SO Test su server di produzione git push BAT!CAVERNA
BAT!CAVE DEV.SO META.SE Utenti testano su meta.stackexchange.com (“baking”) git push
BAT!CAVERNA 1-click deploy
DEV.SO META.SE AZZ! git revert git push BAT!CAVERNA 1-click deploy
DEV.SO NETWORK META.SE 1-click deploy git push 1-click deploy In
produzione! Tonnellate di utenti lo usano… BAT!CAVERNA
BAT!CAVE DEV.SO NETWORK META.SE 1-click deploy git push 1-click deploy
…e richiedono nuove feature! BAT!CAVERNA
Vai veloce e scassa le cose* * Non la
home page o pagine domande :-)
Vai veloce e scassa le cose* * Non la
home page o pagine domande :-)
Abuso dell’uso della cache
None
None
None
Il nostro amico/nemico: Il Garbage Collector (“spazzin”)
None
None
None
None
None
None
Abusiamo della cache per aiutare il GC
None
None
Abusiamo del compilatore per aiutare il GC
None
None
None
None
IRepository<Order> orderRepository = container.Resolve<IRepository<Order>>();
Order order = orderRepository.Get(35); La buona, vecchia dependency injection
None
IRepository<Order> repository = new ValidatingOrderRepository (
new SecurityRepository<Order> ( new LoggingRepository<Order> ( new CachingRepository<Order> ( new NHibernateRepository<Order> () ) ) ) ); Order order = repository.Get(35);
Il nostro sorgente
None
None
None
None
None
None
YAGNI* * You Ain’t Gonna Need It!
Librerie e open source
None
None
None
Wrap code in libraries and open source it
None
None
PROGRAMMAZIONE DA “SUPEREROI”
None
LIVELLO STRUMENTI: HATTORI HANZŌ
• La performance è una feature •
Always. Be. Shipping. • Usate le vostre circostanze. • Rilasciate O/S le vostre librerie • 3 monitor grandi da far schifo. MORALE DELLA FAVOLA
None
Marco Cecconi @sklivvz http://sklivvz.com Stiamo assumendo nuovi ninja da ovunque
nel mondo!