Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Stack Overflow - it's all about performance
Search
Marco Cecconi
November 07, 2014
Programming
740
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Stack Overflow - it's all about performance
Slides of the presentation given in November 2014 at Øredev
Marco Cecconi
November 07, 2014
More Decks by Marco Cecconi
See All by Marco Cecconi
Stack Overflow - It's all about performance - Codemotion Rome 2015
sklivvz
0
910
L'architettura di Stack Overflow, {codemotion} Milano 2014
sklivvz
0
730
Guerrilla Programming - code.talks 2014
sklivvz
0
740
The Architecture of Stack Overflow - Merge Lisbon 2014
sklivvz
4
440
The Architecture of Stack Overflow - Info Share 2014
sklivvz
3
690
The Architecture of Stack Overflow - Dev Sum 2014
sklivvz
2
710
The Architecture of Stack Overflow - QCon Japan 2014
sklivvz
2
260
The Architecture of StackOverflow - QCon China 2014
sklivvz
1
300
The Localization of Stack Overflow- QCon China 2014
sklivvz
1
450
Other Decks in Programming
See All in Programming
re:Inventに行く前に知っておきたい現地参加のノウハウ
nokomoro3
0
400
カツオ、ご期待ください
suneo3476
0
160
更なる可用性を求めて、5年間運用したKotlinのアプリケーションをGoでリプレイスする話
ken_tunc
0
550
[2026-09-26]空論ジェネリックプロセス~テスト資産とAIで紡ぐ、再現可能なパフォーマンスチューニングの話~
tosite
0
260
R8 の設定見直しでアプリサイズ削減
andpad
0
210
SalesForceを内製化!? ~ HR事業を支える顧客管理基盤のインフラを大公開 ~
oku053
0
160
月間100万人のサービス刷新で、 技術選定をHonoに振り切った話
yutobara
8
6.2k
mrbgem 三角測量 開発
ogom
0
230
見えないものを探る要求要件定義に必要な基本的思考 / invisible-requirement-thinking
minodriven
15
8.2k
CodeRabbitの効果検証と過ごしてみた3ヶ月
armondando
0
220
Apple Intelligence を用いた個人情報誤送信防止、及びユーザーリクエスト体験の改善について
yukiny
0
330
AWS CDKのカスタムリソースでContinuum(旧Security Agent)を実装した話 | Implementing Continuum (formerly Security Agent) via AWS CDK Custom Resource
akihisaikeda
2
150
Featured
See All Featured
So, you think you're a good person
axbom
PRO
2
2.2k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
500
The SEO Collaboration Effect
kristinabergwall1
1
590
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.9k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
300
Balancing Empowerment & Direction
lara
6
1.3k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
590
Side Projects
sachag
456
43k
Statistics for Hackers
jakevdp
799
230k
Become a Pro
speakerdeck
PRO
31
6.3k
From π to Pie charts
rasagy
1
390
We Have a Design System, Now What?
morganepeng
55
8.4k
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!