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
Effective Node.js Architectures
Search
Dan Shaw
March 28, 2013
Technology
170
1
Share
Effective Node.js Architectures
Talk given at San Francisco Hacker News group. #SFHN
http://sfhn-dshaw.eventbrite.com
Dan Shaw
March 28, 2013
More Decks by Dan Shaw
See All by Dan Shaw
Node.js and the Web Platform
dshaw
0
81
How NodeSource Uses Docker
dshaw
1
160
Node.js in the Enterprise
dshaw
7
9.8k
Moving Node.js Forward
dshaw
1
780
How Node.js Is Changing Engineering
dshaw
0
150
Node.js Now
dshaw
13
7.5k
SFHTML5 Node.js Now
dshaw
0
160
Effective Node.js Architectures
dshaw
0
280
Effective Node.js Architectures
dshaw
1
470
Other Decks in Technology
See All in Technology
Python開発環境にハーネス適用を検討する
yuuka51
0
400
パーソルキャリア IT/テクノロジー職向け 会社紹介資料|Company Introduction Deck
techtekt
PRO
0
480
その英語学習、AWSで代替できませんか?
suzutatsu
1
210
Loadbalancing exporter internals
ymotongpoo
1
120
個人最適から組織最適へ — 仕組みで進めるAI推進
rfdnxbro
0
110
LookerとADKで作る社内AIエージェント
chanyou0311
0
300
自作エディターをOSSにして分かった、一人に刺さる開発が世界を動かす理由
shinyasaita
1
260
サプライチェーン攻撃への備えについて考えている #湘なんか
stefafafan
3
2.3k
GitHub Copilot CLI で考える複数エージェント設計
tomokusaba
0
150
The Making of AI Chips
pfn
PRO
0
680
ジュニアエンジニアはSREとどう向き合うべきか
nrinetcom
PRO
0
110
Splunk MCPサーバの利活用事例 ーKINTOテクノロジーズの取り組み
kintotechdev
1
190
Featured
See All Featured
Everyday Curiosity
cassininazir
0
210
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.6k
For a Future-Friendly Web
brad_frost
183
10k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9k
Documentation Writing (for coders)
carmenintech
77
5.3k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
65
54k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Designing for humans not robots
tammielis
254
26k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
1
88
エンジニアに許された特別な時間の終わり
watany
106
240k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
240
Transcript
Effective Node.js Architectures @dshaw
Daniel D. Shaw @dshaw
I like to build things with Node
Build Node Things • Storify • Spreecast • Node Knockout
• Voxer • The Node Firm
Do Less Well
FP for Distributed Architectures
What do I do? - your processes
Evolutionary Shapes • ALL THE THINGS! • Generalization • Specialization
• One Thing
ALL THE THINGS Mixture
ALL THE THINGS Easy to run, multi-process, single execution point.
Generalization Not all apps need to aspire to be the
next Facebook.
Scale Will you really need it?
Building and Planning Node.js application
Generalization • Express + Socket.io + API • Website +
API • Restify
Am I doing too much?
Trade-offs
Trade-offs • Expensive loads limit conjoined services. • Impact of
exceptions and crashes. • Deployment complexity. • Deployment isolation. • Evolve services independently.
Dumb Clusters Simple Pooling
Dumb Cluster • Static file server • Simple web sites
• Minimal client/server • API server hosts
Pooling Tools • Round Robin DNS • Varnish • Nginx
• HAProxy • ...more node
Pooling Tools • Substack - seaport, etc • Nodejitsu -
node-http-proxy • Poolee - battle tested at Voxer
Distribute Load Data store(s) have the definitive answers
Smarter Clusters Session Affinity
Sticky Sessions
Sticky Sessions Resources • 3rd party infrastructure • HAProxy •
nginx • stud-proxy - Mikeal
Smart Clusters (Consistent Hash Rings)
Why? Complex interactions or data persistence
Properties of Consistent Hash Rings • Deterministic • Change has
minimal impact on determinism • Crunchy middle?
House of Pain Complexity
Consistent Hash Ring Resources • node-hashring - 3rdEden • node-hash-ring
- Brian Noguchi, C++, dated • Build your own
Right for the Task As simple as possible
None
Thank You! <3 dshaw