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
Stack Overflow - it's all about performance
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Marco Cecconi
November 07, 2014
Programming
2
720
Stack Overflow - it's all about performance
Slides of the presentation given in November 2014 at Øredev
Marco Cecconi
November 07, 2014
Tweet
Share
More Decks by Marco Cecconi
See All by Marco Cecconi
Stack Overflow - It's all about performance - Codemotion Rome 2015
sklivvz
0
890
L'architettura di Stack Overflow, {codemotion} Milano 2014
sklivvz
0
690
Guerrilla Programming - code.talks 2014
sklivvz
0
680
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
660
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
MDN Web Docs に日本語翻訳でコントリビュート
ohmori_yusuke
0
630
Fragmented Architectures
denyspoltorak
0
140
副作用をどこに置くか問題:オブジェクト指向で整理する設計判断ツリー
koxya
1
570
生成AIを使ったコードレビューで定性的に品質カバー
chiilog
0
210
そのAIレビュー、レビューしてますか? / Are you reviewing those AI reviews?
rkaga
6
4.4k
CSC307 Lecture 05
javiergs
PRO
0
490
CSC307 Lecture 03
javiergs
PRO
1
490
Basic Architectures
denyspoltorak
0
650
余白を設計しフロントエンド開発を 加速させる
tsukuha
7
2.1k
今こそ知るべき耐量子計算機暗号(PQC)入門 / PQC: What You Need to Know Now
mackey0225
3
360
高速開発のためのコード整理術
sutetotanuki
1
370
.NET Conf 2025 の興味のあるセッ ションを復習した / dotnet conf 2025 quick recap for backend engineer
tomohisa
0
130
Featured
See All Featured
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
200
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
400
We Have a Design System, Now What?
morganepeng
54
8k
How to Talk to Developers About Accessibility
jct
2
120
Making the Leap to Tech Lead
cromwellryan
135
9.7k
Designing for Performance
lara
610
70k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
110
Site-Speed That Sticks
csswizardry
13
1.1k
Code Reviewing Like a Champion
maltzj
527
40k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
WENDY [Excerpt]
tessaabrams
9
36k
Automating Front-end Workflow
addyosmani
1371
200k
Transcript
Marco Cecconi @sklivvz http://sklivvz.com
ARCHITECTURE? WHAT THE HECK IS THAT?
None
None
Grew to 130 sites (+20%) Global site rank went from
#56 to #44 (-12)
None
*source: Quantcast, Alexa #50-‐ish network for traffic* (between imdb.com
and t.co)
None
None
None
None
None
None
None
None
None
None
None
None
None
http://stackexchange.com/performance
Agile
BAT!CAVE Code-build-test cycle running on home machine feature requests
BAT!CAVE DEV.SO Test on the real servers git push
BAT!CAVE DEV.SO META.SE 1-click deploy Users test on meta.stackexchange.com (“baking”)
git push
BAT!CAVE DEV.SO META.SE 1-click deploy HALP! git revert git push
BAT!CAVE DEV.SO NETWORK META.SE 1-click deploy git push 1-click deploy
It’s live! Tons of users use it…
BAT!CAVE DEV.SO NETWORK META.SE 1-click deploy git push 1-click deploy
…and provide new feature requests
Move fast and break things* * Not the home
page or question page :-)
Move fast and break things* * Not the home
page or question page :-)
Abusing caching
None
None
None
Our frienemy: The Garbage Collector
None
None
None
None
None
None
Cache abuse to help GC
None
None
Compiler abuse to help GC
None
None
None
None
IRepository<Order> orderRepository = container.Resolve<IRepository<Order>>();
Order order = orderRepository.Get(35); Ye olde 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);
Our source code
None
None
None
None
None
None
YAGNI* * You Ain’t Gonna Need It!
Libraries and open source
None
None
None
Wrap code in libraries and open source it
None
None
“SUPERHERO” CODING
None
TOOLS LEVEL: “NINJA”
• Performance is a feature • Always.
Be. Shipping. • Use your circumstances. • Open source your libraries • 3 obscenely big monitors. KEY TAKEAWAYS
None
Marco Cecconi @sklivvz http://sklivvz.com we are hiring new ninjas from
anywhere in the world!