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
Integrating Node.js
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Andrew Nesbitt
November 10, 2012
Technology
820
2
Share
Integrating Node.js
Slides from NodejsConf.it talk
Andrew Nesbitt
November 10, 2012
More Decks by Andrew Nesbitt
See All by Andrew Nesbitt
Ecosyste.ms Conference talk at EasyBuild User Meeting
andrew
0
420
Can my friends come too?
andrew
5
2.4k
Elasticsearch on Rails
andrew
1
500
24 Pull Requests
andrew
0
610
Hardware Hacking with JavaScript
andrew
1
370
Robotics 101
andrew
4
930
Learning how to Tinker
andrew
2
1.1k
Nodecopter Pivotal
andrew
1
200
BathRuby on Robots
andrew
0
160
Other Decks in Technology
See All in Technology
情シスがMCP環境導入時に打ちのめされる認可の崖
oidfj
0
630
脅威をエンジニアリングの糧にして:恐怖を乗り越えた先にあったもの / Turn threats into fuel for engineering: what lay beyond overcoming fear
nrslib
1
320
形式手法特論:公平性制約の位相的特徴づけ #kernelvm / Kernel VM Study Kansai 12th
ytaka23
1
450
OpenClawとHermesAgentでAI新入社員を作った話
takanoriyanada
0
120
類似画像検索モデルの開発ノウハウ
lycorptech_jp
PRO
4
950
Node.js+TypeScriptにおけるCJS/ESM相互運用の最新ポイント
grainrigi
2
130
AI活用の格差をなくす:チーム全体のAI開発生産性を底上げする方法
moongift
PRO
1
110
TROCCOで始めるクラウドコストを民主化するためのFinOps
tk3fftk
1
230
AIが変えた"品質の守り方"
kkakizaki
13
4.8k
テストコードのないプロジェクトにテストを根付かせる
tttol
0
200
JJUG CCC 2026 Spring AI時代の開発こそ標準化を武器に! ― 方式・プロセス・プラットフォームの標準化
s27watanabe
2
410
Java正規表現エンジン(NFA)の仕組みと パフォーマンスを維持するための最適化手法
takeuchi_132917
0
120
Featured
See All Featured
Music & Morning Musume
bryan
47
7.2k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
180
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.3k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
550
Being A Developer After 40
akosma
91
590k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
560
Java REST API Framework Comparison - PWX 2021
mraible
34
9.3k
Balancing Empowerment & Direction
lara
6
1.1k
KATA
mclloyd
PRO
35
15k
It's Worth the Effort
3n
188
29k
Transcript
Integrating Node.js into an existing technology stack
Andrew Nesbitt github.com/andrew @teabass
forwardtechnology.co.uk
None
None
None
Show of hands
Benefits of Node
Legacy Systems
Benefits of integration
Let’s do this!
1. Standalone Tools
Command line tools Asset minification Pixel Trackers Url shorteners Internal
tools Monitoring Chat bots Examples
Legacy App Internal tool Internal tool Internal tool Internal tool
Easy to setup Very little integration Little experience needed Pros
Extra dependencies Knowledge silos Cons
2. Shared databases
Connect directly existing database Read from a data warehouse Share
data with a key-value store Examples
Legacy App DB Node
Quick and dirty Adapters for almost every DB available Slow
databases not a problem Pros
Duplicating domain logic Race-conditions Your DBA will likely hate you
Cons
None
3. Using APIs
Use API from existing application Linkedin Mobile Github Downloads Examples
Legacy App DB Node
Avoid duplication of domain logic JSON APIs are lovely to
work with Plays to Nodes strengths Pros
Extra load on existing application Might have to build/extend existing
API What if the legacy app goes down? Cons
4. Creating APIs
Websocket Services Streaming services APIs for Mobile Apps Proxy serivces
File upload handling Ebay’s ql.io Examples
DB Node Clients
Handle very load Lots of concurrent connections JSON comes naturally
Pros
Cons You now have a dependeny on Node System adminstration
Teaching others about it
mysql Rails Disc Cache Nginx Redis Node Browser Pusher http://live.mpora.com
Mpora Live
5. Message Queues
ZeroMQ Resque Redis Pubsub dnode Examples
Message Queue Legacy App Node Legacy Worker
6. Streams
Twitter, Facebook, Salesforce HTTP long polling Comet XMPP Examples
7. Embedding
Ruby Racer Android Hadoop and Timothy Sprintstack PLV8 Examples
create or replace function fib(n int) returns int as $$
function fib(n) { return n<2 ? n : fib(n-1) + fib(n-2) } return fib(n) $$ LANGUAGE plv8 IMMUTABLE STRICT;
http://pgeu-plv8.herokuapp.com
Legacy App Node
Scripting within compiled languages Use existing, battle tested software Enable
Node on embedded devices Pros
Under heavy development You need to know the host platform
Context switching overhead Cons
Take a unix-like approach Decoupled Systems Use APIs to share
data Play to node’s strengths Summary
Node on Andriod - lanyrd.com/smpbg Rails and Node.js - lanyrd.com/srmwr
Hadoop and Timothy - lanyrd.com/sttxx Rhinode (Sprintstack) - lanyrd.com/srmwx These slides - lanyrd.com/szwyc Links