16
Intro to node.js #SKGNode

Intro to node.js

Embed Size (px)

DESCRIPTION

An introduction to Node.js

Citation preview

Page 1: Intro to node.js

Intro to node.js#SKGNode

Page 2: Intro to node.js

#SKGNode@thanpolas

Core Concepts

Page 3: Intro to node.js

#SKGNode@thanpolas

Why Node?

● Asynchronous● Robust● Blazingly FAST● Javascript / Browserify● Largest growth year over year● Largest frontend tool belt

Page 4: Intro to node.js

#SKGNode@thanpolas

Asynchronous

● Event Based Development

● Real Time Applications

● Single Threaded

● Non Blocking I/O

Page 5: Intro to node.js

#SKGNode@thanpolas

Robust

● Very small footprint / stack● Hundreds thousand production installations● Easily Scalable● Every major company is deploying node

○ Yahoo○ Paypal○ eBay○ LinkedIn

Page 6: Intro to node.js

#SKGNode@thanpolas

Blazingly Fast

● Superior V8 engine under the hood● 2x speed compared to Threaded langs

○ PHP○ Java○ Ruby

● Wins both in RPS and Response Time

Page 7: Intro to node.js

#SKGNode@thanpolas

Why Blazingly Fast

source: http://strongloop.com/strongblog/node-js-is-faster-than-java/

Page 8: Intro to node.js

#SKGNode@thanpolas

Javascript & Browserify

● Javascript is the Lingua Franca of the web

● Huge & Growing developer pool

● Minimum context switching for back / front

Page 9: Intro to node.js

#SKGNode@thanpolas

Largest Growth

source: http://www.modulecounts.com/

● 95k NPM Modules

● Grows at 159m/day

● Second is Maven with 73/d

Page 10: Intro to node.js

#SKGNode@thanpolas

Largest Frontend Tool Belt

Page 11: Intro to node.js

#SKGNode@thanpolas

A Quick Look Under the Hood

Page 12: Intro to node.js

#SKGNode@thanpolas

Philosophy

● No Frameworks

● Small reusable libraries

● NPM

● Open Source

Page 13: Intro to node.js

#SKGNode@thanpolas

A Typical Node Web App

Your AppCore HTTP ExpressJS

Page 14: Intro to node.js

#SKGNode@thanpolas

Middleware Pattern

HTTP Request

Express JS

Mat

ched

Rou

te

CO

RS

Mid

dlew

are

CS

RF

Mid

dlew

are

Aut

h M

iddl

ewar

e

Mai

n Ta

sk

HTTP Response

Page 15: Intro to node.js

Thank you!Thanasis Polychronakis@[email protected]

#SKGNodeMeetup Group: http://bit.ly/skgnode

Slides: http://bit.ly/nodeIntro

Page 16: Intro to node.js

Questions?Thanasis Polychronakis@[email protected]

#SKGNodeMeetup Group: http://bit.ly/skgnode

Slides: http://bit.ly/nodeIntro