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
This is Node.js
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Alexander Beletsky
July 09, 2014
Programming
490
10
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
This is Node.js
The talk I gave on UA Dev Club, 8-Jul-2014
Alexander Beletsky
July 09, 2014
More Decks by Alexander Beletsky
See All by Alexander Beletsky
Snapshot Testing: Going beyond UI
alexbeletsky
1
730
Tech Culture in Startups
alexbeletsky
0
270
TDD in JavaScript
alexbeletsky
4
870
Likeastore
alexbeletsky
3
190
PaaS in your pocker with Dokku
alexbeletsky
7
2.7k
Building Single Page Applications
alexbeletsky
9
5.5k
.NET developer in JavaScript world
alexbeletsky
1
2.9k
How to write good tests?
alexbeletsky
2
360
Dynamic web development with Oak
alexbeletsky
1
670
Other Decks in Programming
See All in Programming
カツオ、ご期待ください
suneo3476
0
190
Kotlinの15年とServer-Side Kotlin
n_takehata
1
150
Unity6 URPによる海底をテーマにしたVJシステムの解説 | Unity Shader 完全に理解した 勉強会
gam0022
0
370
すこし踏み込む CancellationToken
htkym
2
1.7k
Jetpack Compose Mechanisms
skydoves
3
820
Rでドレミ/Do-Re-Mi_with_R
florets1
0
130
Event is what happens
moro
2
840
AIに “答え“を書かせるのを やめてみた
___akari11
0
120
npm との違いを手がかりにGo の依存管理を理解したい
optim
0
570
golang-bob.pdf
iwatsukayura
0
130
全ての永続トークンを、生まれる前に消し去りたい!
sylph01
2
960
Domain-Driven Transformation
hschwentner
2
2.3k
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
55
10k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
1
280
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
The SEO identity crisis: Don't let AI make you average
varn
0
590
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
310
WCS-LA-2024
lcolladotor
0
890
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
640
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
540
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
43k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.8k
Discover your Explorer Soul
emna__ayadi
2
1.3k
Transcript
This is Node.js
[email protected]
http://beletsky.net http://twitter.com/alexbeletsky
"I was concerned about the ability to program advanced push
features into the website like I had seen in Gmail" Ryan Dahl the creator of Node.js
V8 Google's open source JavaScript engine. V8 can run standalone,
or can be embedded into any C++ application.
LibUV High performance evented I/O Originally based on LibEV switch
to LibUV with support of Windows
JavaScript Dynamic, prototype-based language Highly popular due to browser programming
http://jsconf.eu/2009/speakers.html
Why JavaScript? functions as first-class citizen
Why JavaScript? function as first-class citizen //closures..
JavaScript designed for event-oriented systems There was a natural fit
V8 + LibEV + JavaScript
“Node.js is a platform for easily building scalable network applications.
Node.js uses an event-driven (single threaded), non-blocking I/O model that makes it lightweight and efficient…” http://nodejs.org
Non Blocking I/O The concept of accessing I/O without blocking
of application
https://www.flickr.com/photos/papyrist/ Line to ATM is blocking I/O
Mac’s Drive is non-blocking I/O
None
execution started from first line.. Output:
async operation started… Output:
but execution goes on.. > ping Output:
after ~ms file is read… > ping > pong Output:
Event Driven Application flow is driven by events
http://misclassblog.com/interactive-web-development/node-js/
Single Threaded Single-thread programming concepts is more easy to understand.
Applications running in single thread are lightweight and efficient
“Node.js is designed for building efficient networking applications”
Core components: ! • HTTP / HTTPS • TCP /
UDP / Sockets • DNS • File System • Crypto / Arch • Events • Streams
Efficiency & Scalability Build-in server, high concurrency, horizontal scalability, clustering
NPM Node Package Manager - the richest collection of high
quality open source modules
None
Thanks, @alexbeletsky