ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
Node.js
             ¡°Because nothing blocks, less-than-expert
           programmers are able to develop fast systems.¡±
                                        http://nodejs.org/#about




04/2010 Rocco Georgi, PavingWays Ltd.
Node.js
                   written in C and JavaScript
                   I/O framework
                   evented
                   non-blocking
                   server-side JavaScript
                   CommonJS module system
                   using V8
04/2010 Rocco Georgi, PavingWays Ltd.
written in C

                   ./con?gure
                   make
                   make install
                   #> node my?le.js



04/2010 Rocco Georgi, PavingWays Ltd.
I/O

                   network I/O
                   ?le I/O
                   * I/O




04/2010 Rocco Georgi, PavingWays Ltd.
evented
                                           var tcp = require('tcp');

                                           var server = tcp.createServer(function (socket) {
                                             socket.setEncoding("utf8");
                   event handlers                socket.addListener("connect", function () {
                                                     socket.send("hellorn");
                   for anything                  });

                                                 socket.addListener("receive", function (data) {
                   event loop                    });
                                                     socket.send(data);



                   no threads                    socket.addListener("eof", function () {
                                                     socket.send("goodbyern");
                                                     socket.close();
                                                 });
                                           });

                                           server.listen(7000, "localhost");

04/2010 Rocco Georgi, PavingWays Ltd.
non-blocking

                   I/O is never blocking anything
                   callbacks on anything
                   everything in a single thread + loop
                   very small memory footprint



04/2010 Rocco Georgi, PavingWays Ltd.
server-side JS
                   V8 engine
                   CommonJS: ?le = module
                    // this loads circle.js and the sys object
                    var circle = require('./circle');
                    var sys = require('sys');

                    // use the sys and circle object
                    sys.puts('circle area at radius 4 = ' + circle.area(4));

                   no window object


04/2010 Rocco Georgi, PavingWays Ltd.
Bene?ts
                   low memory footprint per connection
                   high concurrency
                   ¡°hanging¡± requests -> Comet
                   custom TCP/HTTP servers
                   active module community
                   e.g. WebSockets server


04/2010 Rocco Georgi, PavingWays Ltd.

More Related Content

What's hot (19)

Google country day_intervento
Google country day_interventoGoogle country day_intervento
Google country day_intervento
firenze-gtug
?
Vert.x v3 - high performance polyglot application toolkit
Vert.x v3 - high performance  polyglot application toolkitVert.x v3 - high performance  polyglot application toolkit
Vert.x v3 - high performance polyglot application toolkit
Sages
?
Grsecurity - Theoretical and Practical Application
Grsecurity - Theoretical and Practical ApplicationGrsecurity - Theoretical and Practical Application
Grsecurity - Theoretical and Practical Application
Zero Science Lab
?
SenchaLabs Connect & Express
SenchaLabs Connect & ExpressSenchaLabs Connect & Express
SenchaLabs Connect & Express
Tim Caswell
?
Puppet - Instant Data Center
Puppet  - Instant Data CenterPuppet  - Instant Data Center
Puppet - Instant Data Center
Bryan Belanger
?
Visual Programming Framework for Unity - UniFlow ¤Î¤´½B½é
Visual Programming Framework for Unity - UniFlow ¤Î¤´½B½éVisual Programming Framework for Unity - UniFlow ¤Î¤´½B½é
Visual Programming Framework for Unity - UniFlow ¤Î¤´½B½é
Mori Tetsuya
?
DEF CON 27 - ANDY GRANT - unpacking pkgs
DEF CON 27 - ANDY GRANT - unpacking pkgsDEF CON 27 - ANDY GRANT - unpacking pkgs
DEF CON 27 - ANDY GRANT - unpacking pkgs
Felipe Prado
?
Building real-time apps with WebSockets
Building real-time apps with WebSocketsBuilding real-time apps with WebSockets
Building real-time apps with WebSockets
Microsoft Developer Network (MSDN) - Belgium and Luxembourg
?
Blockchain
BlockchainBlockchain
Blockchain
Scott Turner
?
KSDG-iºÝºÝߣ App é_°lÐĵ÷ÖÏí
KSDG-iºÝºÝߣ App é_°lÐĵ÷ÖÏíKSDG-iºÝºÝߣ App é_°lÐĵ÷ÖÏí
KSDG-iºÝºÝߣ App é_°lÐĵ÷ÖÏí
Chia Wei Tsai
?
Cygwin+and+open ssl+install+guide
Cygwin+and+open ssl+install+guideCygwin+and+open ssl+install+guide
Cygwin+and+open ssl+install+guide
ganaaturuu
?
Ruby¤ÇIdenticon RejectRejectKaigi 2008
Ruby¤ÇIdenticon RejectRejectKaigi 2008Ruby¤ÇIdenticon RejectRejectKaigi 2008
Ruby¤ÇIdenticon RejectRejectKaigi 2008
swdyh
?
NodeJS "Web en tiempo real"
NodeJS "Web en tiempo real"NodeJS "Web en tiempo real"
NodeJS "Web en tiempo real"
Sebasti¨¢n Gamboa
?
Aloofix
AloofixAloofix
Aloofix
Kevin Johnson
?
Websockets - DevFestX May 19, 2012
Websockets - DevFestX May 19, 2012Websockets - DevFestX May 19, 2012
Websockets - DevFestX May 19, 2012
Sameer Segal
?
Quick Introduction to Node.js
Quick Introduction to Node.jsQuick Introduction to Node.js
Quick Introduction to Node.js
Naing Lin Aung
?
Introduction to Rust
Introduction to RustIntroduction to Rust
Introduction to Rust
Jo?o Oliveira
?
Socket.io tech talk 06022014
Socket.io   tech talk 06022014Socket.io   tech talk 06022014
Socket.io tech talk 06022014
rifqi alfian
?
Mise en place d'un client VPN l2tp IPsec sous docker
Mise en place d'un client VPN l2tp IPsec sous dockerMise en place d'un client VPN l2tp IPsec sous docker
Mise en place d'un client VPN l2tp IPsec sous docker
Nicolas Trauwaen
?
Google country day_intervento
Google country day_interventoGoogle country day_intervento
Google country day_intervento
firenze-gtug
?
Vert.x v3 - high performance polyglot application toolkit
Vert.x v3 - high performance  polyglot application toolkitVert.x v3 - high performance  polyglot application toolkit
Vert.x v3 - high performance polyglot application toolkit
Sages
?
Grsecurity - Theoretical and Practical Application
Grsecurity - Theoretical and Practical ApplicationGrsecurity - Theoretical and Practical Application
Grsecurity - Theoretical and Practical Application
Zero Science Lab
?
SenchaLabs Connect & Express
SenchaLabs Connect & ExpressSenchaLabs Connect & Express
SenchaLabs Connect & Express
Tim Caswell
?
Puppet - Instant Data Center
Puppet  - Instant Data CenterPuppet  - Instant Data Center
Puppet - Instant Data Center
Bryan Belanger
?
Visual Programming Framework for Unity - UniFlow ¤Î¤´½B½é
Visual Programming Framework for Unity - UniFlow ¤Î¤´½B½éVisual Programming Framework for Unity - UniFlow ¤Î¤´½B½é
Visual Programming Framework for Unity - UniFlow ¤Î¤´½B½é
Mori Tetsuya
?
DEF CON 27 - ANDY GRANT - unpacking pkgs
DEF CON 27 - ANDY GRANT - unpacking pkgsDEF CON 27 - ANDY GRANT - unpacking pkgs
DEF CON 27 - ANDY GRANT - unpacking pkgs
Felipe Prado
?
KSDG-iºÝºÝߣ App é_°lÐĵ÷ÖÏí
KSDG-iºÝºÝߣ App é_°lÐĵ÷ÖÏíKSDG-iºÝºÝߣ App é_°lÐĵ÷ÖÏí
KSDG-iºÝºÝߣ App é_°lÐĵ÷ÖÏí
Chia Wei Tsai
?
Cygwin+and+open ssl+install+guide
Cygwin+and+open ssl+install+guideCygwin+and+open ssl+install+guide
Cygwin+and+open ssl+install+guide
ganaaturuu
?
Ruby¤ÇIdenticon RejectRejectKaigi 2008
Ruby¤ÇIdenticon RejectRejectKaigi 2008Ruby¤ÇIdenticon RejectRejectKaigi 2008
Ruby¤ÇIdenticon RejectRejectKaigi 2008
swdyh
?
Websockets - DevFestX May 19, 2012
Websockets - DevFestX May 19, 2012Websockets - DevFestX May 19, 2012
Websockets - DevFestX May 19, 2012
Sameer Segal
?
Quick Introduction to Node.js
Quick Introduction to Node.jsQuick Introduction to Node.js
Quick Introduction to Node.js
Naing Lin Aung
?
Socket.io tech talk 06022014
Socket.io   tech talk 06022014Socket.io   tech talk 06022014
Socket.io tech talk 06022014
rifqi alfian
?
Mise en place d'un client VPN l2tp IPsec sous docker
Mise en place d'un client VPN l2tp IPsec sous dockerMise en place d'un client VPN l2tp IPsec sous docker
Mise en place d'un client VPN l2tp IPsec sous docker
Nicolas Trauwaen
?

Viewers also liked (8)

Presentatie HRO CDM2-svim 180610
Presentatie HRO CDM2-svim 180610Presentatie HRO CDM2-svim 180610
Presentatie HRO CDM2-svim 180610
visnet
?
Introduction to IoT
Introduction to IoTIntroduction to IoT
Introduction to IoT
Liad Bokovsky
?
ÊÀ½çÊ®´ó¶ñÈ®(¾«²Ê)
ÊÀ½çÊ®´ó¶ñÈ®(¾«²Ê)ÊÀ½çÊ®´ó¶ñÈ®(¾«²Ê)
ÊÀ½çÊ®´ó¶ñÈ®(¾«²Ê)
eric.suwh
?
Rimedi Naturali
Rimedi NaturaliRimedi Naturali
Rimedi Naturali
Nicola Bellomo
?
Audit Log Protection: Avoiding a False Sense of Security
Audit Log Protection: Avoiding a False Sense of SecurityAudit Log Protection: Avoiding a False Sense of Security
Audit Log Protection: Avoiding a False Sense of Security
Nbukhari
?
ÊÀ½çÊ®´ó¶ñÈ®(¾«²Ê)
ÊÀ½çÊ®´ó¶ñÈ®(¾«²Ê)ÊÀ½çÊ®´ó¶ñÈ®(¾«²Ê)
ÊÀ½çÊ®´ó¶ñÈ®(¾«²Ê)
eric.suwh
?
There is an api for that
There is an api for thatThere is an api for that
There is an api for that
Liad Bokovsky
?
Ladies Of The Skies
Ladies Of The SkiesLadies Of The Skies
Ladies Of The Skies
StrangeBird
?
Presentatie HRO CDM2-svim 180610
Presentatie HRO CDM2-svim 180610Presentatie HRO CDM2-svim 180610
Presentatie HRO CDM2-svim 180610
visnet
?
ÊÀ½çÊ®´ó¶ñÈ®(¾«²Ê)
ÊÀ½çÊ®´ó¶ñÈ®(¾«²Ê)ÊÀ½çÊ®´ó¶ñÈ®(¾«²Ê)
ÊÀ½çÊ®´ó¶ñÈ®(¾«²Ê)
eric.suwh
?
Audit Log Protection: Avoiding a False Sense of Security
Audit Log Protection: Avoiding a False Sense of SecurityAudit Log Protection: Avoiding a False Sense of Security
Audit Log Protection: Avoiding a False Sense of Security
Nbukhari
?
ÊÀ½çÊ®´ó¶ñÈ®(¾«²Ê)
ÊÀ½çÊ®´ó¶ñÈ®(¾«²Ê)ÊÀ½çÊ®´ó¶ñÈ®(¾«²Ê)
ÊÀ½çÊ®´ó¶ñÈ®(¾«²Ê)
eric.suwh
?
There is an api for that
There is an api for thatThere is an api for that
There is an api for that
Liad Bokovsky
?
Ladies Of The Skies
Ladies Of The SkiesLadies Of The Skies
Ladies Of The Skies
StrangeBird
?

Similar to Nodejs Intro (20)

Nodejs and WebSockets
Nodejs and WebSocketsNodejs and WebSockets
Nodejs and WebSockets
Gonzalo Ayuso
?
soft-shake.ch - Hands on Node.js
soft-shake.ch - Hands on Node.jssoft-shake.ch - Hands on Node.js
soft-shake.ch - Hands on Node.js
soft-shake.ch
?
Introducing to node.js
Introducing to node.jsIntroducing to node.js
Introducing to node.js
JeongHun Byeon
?
Original slides from Ryan Dahl's NodeJs intro talk
Original slides from Ryan Dahl's NodeJs intro talkOriginal slides from Ryan Dahl's NodeJs intro talk
Original slides from Ryan Dahl's NodeJs intro talk
Aarti Parikh
?
Event-driven IO server-side JavaScript environment based on V8 Engine
Event-driven IO server-side JavaScript environment based on V8 EngineEvent-driven IO server-side JavaScript environment based on V8 Engine
Event-driven IO server-side JavaScript environment based on V8 Engine
Ricardo Silva
?
Rapid Network Application Development with Apache MINA
Rapid Network Application Development with Apache MINARapid Network Application Development with Apache MINA
Rapid Network Application Development with Apache MINA
trustinlee
?
Node Web Development 2nd Edition: Chapter1 About Node
Node Web Development 2nd Edition: Chapter1 About NodeNode Web Development 2nd Edition: Chapter1 About Node
Node Web Development 2nd Edition: Chapter1 About Node
Rick Chang
?
A slightly advanced introduction to node.js
A slightly advanced introduction to node.jsA slightly advanced introduction to node.js
A slightly advanced introduction to node.js
Sudar Muthu
?
Nodejs a-practical-introduction-oredev
Nodejs a-practical-introduction-oredevNodejs a-practical-introduction-oredev
Nodejs a-practical-introduction-oredev
Felix Geisend?rfer
?
Node jsʵ¼ù
Node jsʵ¼ùNode jsʵ¼ù
Node jsʵ¼ù
jay li
?
±·´Ç»å±ð.Âá²õ¤Ã¤Æ¤É¤¦¤Ê¤Î£¿
±·´Ç»å±ð.Âá²õ¤Ã¤Æ¤É¤¦¤Ê¤Î£¿±·´Ç»å±ð.Âá²õ¤Ã¤Æ¤É¤¦¤Ê¤Î£¿
±·´Ç»å±ð.Âá²õ¤Ã¤Æ¤É¤¦¤Ê¤Î£¿
Ryunosuke SATO
?
Muduo network library
Muduo network libraryMuduo network library
Muduo network library
Shuo Chen
?
Node.js - A practical introduction (v2)
Node.js  - A practical introduction (v2)Node.js  - A practical introduction (v2)
Node.js - A practical introduction (v2)
Felix Geisend?rfer
?
node.js: Javascript's in your backend
node.js: Javascript's in your backendnode.js: Javascript's in your backend
node.js: Javascript's in your backend
David Padbury
?
SockJS Intro
SockJS IntroSockJS Intro
SockJS Intro
Ngoc Dao
?
Why Nodejs Guilin Shanghai
Why Nodejs Guilin ShanghaiWhy Nodejs Guilin Shanghai
Why Nodejs Guilin Shanghai
Jackson Tian
?
Why Node.js
Why Node.jsWhy Node.js
Why Node.js
guileen
?
What is nodejs
What is nodejsWhat is nodejs
What is nodejs
JeongHun Byeon
?
Security and performance designs for client-server communications
Security and performance designs for client-server communicationsSecurity and performance designs for client-server communications
Security and performance designs for client-server communications
WO Community
?
Node.js 1, 2, 3
Node.js 1, 2, 3Node.js 1, 2, 3
Node.js 1, 2, 3
Jian-Hong Pan
?
soft-shake.ch - Hands on Node.js
soft-shake.ch - Hands on Node.jssoft-shake.ch - Hands on Node.js
soft-shake.ch - Hands on Node.js
soft-shake.ch
?
Original slides from Ryan Dahl's NodeJs intro talk
Original slides from Ryan Dahl's NodeJs intro talkOriginal slides from Ryan Dahl's NodeJs intro talk
Original slides from Ryan Dahl's NodeJs intro talk
Aarti Parikh
?
Event-driven IO server-side JavaScript environment based on V8 Engine
Event-driven IO server-side JavaScript environment based on V8 EngineEvent-driven IO server-side JavaScript environment based on V8 Engine
Event-driven IO server-side JavaScript environment based on V8 Engine
Ricardo Silva
?
Rapid Network Application Development with Apache MINA
Rapid Network Application Development with Apache MINARapid Network Application Development with Apache MINA
Rapid Network Application Development with Apache MINA
trustinlee
?
Node Web Development 2nd Edition: Chapter1 About Node
Node Web Development 2nd Edition: Chapter1 About NodeNode Web Development 2nd Edition: Chapter1 About Node
Node Web Development 2nd Edition: Chapter1 About Node
Rick Chang
?
A slightly advanced introduction to node.js
A slightly advanced introduction to node.jsA slightly advanced introduction to node.js
A slightly advanced introduction to node.js
Sudar Muthu
?
Nodejs a-practical-introduction-oredev
Nodejs a-practical-introduction-oredevNodejs a-practical-introduction-oredev
Nodejs a-practical-introduction-oredev
Felix Geisend?rfer
?
Node jsʵ¼ù
Node jsʵ¼ùNode jsʵ¼ù
Node jsʵ¼ù
jay li
?
±·´Ç»å±ð.Âá²õ¤Ã¤Æ¤É¤¦¤Ê¤Î£¿
±·´Ç»å±ð.Âá²õ¤Ã¤Æ¤É¤¦¤Ê¤Î£¿±·´Ç»å±ð.Âá²õ¤Ã¤Æ¤É¤¦¤Ê¤Î£¿
±·´Ç»å±ð.Âá²õ¤Ã¤Æ¤É¤¦¤Ê¤Î£¿
Ryunosuke SATO
?
Muduo network library
Muduo network libraryMuduo network library
Muduo network library
Shuo Chen
?
Node.js - A practical introduction (v2)
Node.js  - A practical introduction (v2)Node.js  - A practical introduction (v2)
Node.js - A practical introduction (v2)
Felix Geisend?rfer
?
node.js: Javascript's in your backend
node.js: Javascript's in your backendnode.js: Javascript's in your backend
node.js: Javascript's in your backend
David Padbury
?
Why Nodejs Guilin Shanghai
Why Nodejs Guilin ShanghaiWhy Nodejs Guilin Shanghai
Why Nodejs Guilin Shanghai
Jackson Tian
?
Why Node.js
Why Node.jsWhy Node.js
Why Node.js
guileen
?
Security and performance designs for client-server communications
Security and performance designs for client-server communicationsSecurity and performance designs for client-server communications
Security and performance designs for client-server communications
WO Community
?

Recently uploaded (20)

San Francisco Atlassian ACE - Mar 27 2025.pdf
San Francisco Atlassian ACE - Mar 27 2025.pdfSan Francisco Atlassian ACE - Mar 27 2025.pdf
San Francisco Atlassian ACE - Mar 27 2025.pdf
Matt Doar
?
Leadership Spectrum by Sonam Sherpa at GDG Kathmandu March Monthly Meetup
Leadership Spectrum by Sonam Sherpa at GDG Kathmandu March Monthly MeetupLeadership Spectrum by Sonam Sherpa at GDG Kathmandu March Monthly Meetup
Leadership Spectrum by Sonam Sherpa at GDG Kathmandu March Monthly Meetup
GDG Kathmandu
?
Fast Screen Recorder v2.1.0.11 Crack Updated [April-2025]
Fast Screen Recorder v2.1.0.11 Crack Updated [April-2025]Fast Screen Recorder v2.1.0.11 Crack Updated [April-2025]
Fast Screen Recorder v2.1.0.11 Crack Updated [April-2025]
jackalen173
?
APAC Solutions Challenge Info Session.pdf
APAC Solutions Challenge Info Session.pdfAPAC Solutions Challenge Info Session.pdf
APAC Solutions Challenge Info Session.pdf
GDG on Campus Monash
?
Microsoft Digital Defense Report 2024 .pdf
Microsoft Digital Defense Report 2024 .pdfMicrosoft Digital Defense Report 2024 .pdf
Microsoft Digital Defense Report 2024 .pdf
Abhishek Agarwal
?
UiPath NY AI Series: Session 4: UiPath AutoPilot for Developers using Studio Web
UiPath NY AI Series: Session 4: UiPath AutoPilot for Developers using Studio WebUiPath NY AI Series: Session 4: UiPath AutoPilot for Developers using Studio Web
UiPath NY AI Series: Session 4: UiPath AutoPilot for Developers using Studio Web
DianaGray10
?
How Telemedicine App Development is Revolutionizing Virtual Care.pptx
How Telemedicine App Development is Revolutionizing Virtual Care.pptxHow Telemedicine App Development is Revolutionizing Virtual Care.pptx
How Telemedicine App Development is Revolutionizing Virtual Care.pptx
Dash Technologies Inc
?
Why Outsource Accounting to India A Smart Business Move!.pdf
Why Outsource Accounting to India A Smart Business Move!.pdfWhy Outsource Accounting to India A Smart Business Move!.pdf
Why Outsource Accounting to India A Smart Business Move!.pdf
anjelinajones6811
?
Top Tips to Get Your Data AI-Ready? ? ?? ?
Top Tips to Get Your Data AI-Ready? ? ?? ?Top Tips to Get Your Data AI-Ready? ? ?? ?
Top Tips to Get Your Data AI-Ready? ? ?? ?
Precisely
?
Packaging your App for AppExchange ¨C Managed Vs Unmanaged.pptx
Packaging your App for AppExchange ¨C Managed Vs Unmanaged.pptxPackaging your App for AppExchange ¨C Managed Vs Unmanaged.pptx
Packaging your App for AppExchange ¨C Managed Vs Unmanaged.pptx
mohayyudin7826
?
The effectiveness of ai powered educational tools in enhancing academic perfo...
The effectiveness of ai powered educational tools in enhancing academic perfo...The effectiveness of ai powered educational tools in enhancing academic perfo...
The effectiveness of ai powered educational tools in enhancing academic perfo...
aebhpmqaocxhydmajf
?
AI in Talent Acquisition: Boosting Hiring
AI in Talent Acquisition: Boosting HiringAI in Talent Acquisition: Boosting Hiring
AI in Talent Acquisition: Boosting Hiring
Beyond Chiefs
?
HHUG-04-2025-Close-more-deals-from-your-existing-pipeline-FOR SLIDESHARE.pptx
HHUG-04-2025-Close-more-deals-from-your-existing-pipeline-FOR SLIDESHARE.pptxHHUG-04-2025-Close-more-deals-from-your-existing-pipeline-FOR SLIDESHARE.pptx
HHUG-04-2025-Close-more-deals-from-your-existing-pipeline-FOR SLIDESHARE.pptx
HampshireHUG
?
Least Privilege AWS IAM Role Permissions
Least Privilege AWS IAM Role PermissionsLeast Privilege AWS IAM Role Permissions
Least Privilege AWS IAM Role Permissions
Chris Wahl
?
Innovative Web Design | Malachite Technologies
Innovative Web Design | Malachite TechnologiesInnovative Web Design | Malachite Technologies
Innovative Web Design | Malachite Technologies
malachitetechnologie1
?
Smarter RAG Pipelines: Scaling Search with Milvus and Feast
Smarter RAG Pipelines: Scaling Search with Milvus and FeastSmarter RAG Pipelines: Scaling Search with Milvus and Feast
Smarter RAG Pipelines: Scaling Search with Milvus and Feast
Zilliz
?
Columbia Weather Systems - Product Overview
Columbia Weather Systems - Product OverviewColumbia Weather Systems - Product Overview
Columbia Weather Systems - Product Overview
Columbia Weather Systems
?
STRING FUNCTIONS IN JAVA BY N SARATH KUMAR
STRING FUNCTIONS IN JAVA BY N SARATH KUMARSTRING FUNCTIONS IN JAVA BY N SARATH KUMAR
STRING FUNCTIONS IN JAVA BY N SARATH KUMAR
Sarathkumar Narsupalli
?
Testing Tools for Accessibility Enhancement Part II.pptx
Testing Tools for Accessibility Enhancement Part II.pptxTesting Tools for Accessibility Enhancement Part II.pptx
Testing Tools for Accessibility Enhancement Part II.pptx
Julia Undeutsch
?
State_of_AI_Transformation in Germany.pdf
State_of_AI_Transformation in Germany.pdfState_of_AI_Transformation in Germany.pdf
State_of_AI_Transformation in Germany.pdf
VaradRajanKrishna
?
San Francisco Atlassian ACE - Mar 27 2025.pdf
San Francisco Atlassian ACE - Mar 27 2025.pdfSan Francisco Atlassian ACE - Mar 27 2025.pdf
San Francisco Atlassian ACE - Mar 27 2025.pdf
Matt Doar
?
Leadership Spectrum by Sonam Sherpa at GDG Kathmandu March Monthly Meetup
Leadership Spectrum by Sonam Sherpa at GDG Kathmandu March Monthly MeetupLeadership Spectrum by Sonam Sherpa at GDG Kathmandu March Monthly Meetup
Leadership Spectrum by Sonam Sherpa at GDG Kathmandu March Monthly Meetup
GDG Kathmandu
?
Fast Screen Recorder v2.1.0.11 Crack Updated [April-2025]
Fast Screen Recorder v2.1.0.11 Crack Updated [April-2025]Fast Screen Recorder v2.1.0.11 Crack Updated [April-2025]
Fast Screen Recorder v2.1.0.11 Crack Updated [April-2025]
jackalen173
?
APAC Solutions Challenge Info Session.pdf
APAC Solutions Challenge Info Session.pdfAPAC Solutions Challenge Info Session.pdf
APAC Solutions Challenge Info Session.pdf
GDG on Campus Monash
?
Microsoft Digital Defense Report 2024 .pdf
Microsoft Digital Defense Report 2024 .pdfMicrosoft Digital Defense Report 2024 .pdf
Microsoft Digital Defense Report 2024 .pdf
Abhishek Agarwal
?
UiPath NY AI Series: Session 4: UiPath AutoPilot for Developers using Studio Web
UiPath NY AI Series: Session 4: UiPath AutoPilot for Developers using Studio WebUiPath NY AI Series: Session 4: UiPath AutoPilot for Developers using Studio Web
UiPath NY AI Series: Session 4: UiPath AutoPilot for Developers using Studio Web
DianaGray10
?
How Telemedicine App Development is Revolutionizing Virtual Care.pptx
How Telemedicine App Development is Revolutionizing Virtual Care.pptxHow Telemedicine App Development is Revolutionizing Virtual Care.pptx
How Telemedicine App Development is Revolutionizing Virtual Care.pptx
Dash Technologies Inc
?
Why Outsource Accounting to India A Smart Business Move!.pdf
Why Outsource Accounting to India A Smart Business Move!.pdfWhy Outsource Accounting to India A Smart Business Move!.pdf
Why Outsource Accounting to India A Smart Business Move!.pdf
anjelinajones6811
?
Top Tips to Get Your Data AI-Ready? ? ?? ?
Top Tips to Get Your Data AI-Ready? ? ?? ?Top Tips to Get Your Data AI-Ready? ? ?? ?
Top Tips to Get Your Data AI-Ready? ? ?? ?
Precisely
?
Packaging your App for AppExchange ¨C Managed Vs Unmanaged.pptx
Packaging your App for AppExchange ¨C Managed Vs Unmanaged.pptxPackaging your App for AppExchange ¨C Managed Vs Unmanaged.pptx
Packaging your App for AppExchange ¨C Managed Vs Unmanaged.pptx
mohayyudin7826
?
The effectiveness of ai powered educational tools in enhancing academic perfo...
The effectiveness of ai powered educational tools in enhancing academic perfo...The effectiveness of ai powered educational tools in enhancing academic perfo...
The effectiveness of ai powered educational tools in enhancing academic perfo...
aebhpmqaocxhydmajf
?
AI in Talent Acquisition: Boosting Hiring
AI in Talent Acquisition: Boosting HiringAI in Talent Acquisition: Boosting Hiring
AI in Talent Acquisition: Boosting Hiring
Beyond Chiefs
?
HHUG-04-2025-Close-more-deals-from-your-existing-pipeline-FOR SLIDESHARE.pptx
HHUG-04-2025-Close-more-deals-from-your-existing-pipeline-FOR SLIDESHARE.pptxHHUG-04-2025-Close-more-deals-from-your-existing-pipeline-FOR SLIDESHARE.pptx
HHUG-04-2025-Close-more-deals-from-your-existing-pipeline-FOR SLIDESHARE.pptx
HampshireHUG
?
Least Privilege AWS IAM Role Permissions
Least Privilege AWS IAM Role PermissionsLeast Privilege AWS IAM Role Permissions
Least Privilege AWS IAM Role Permissions
Chris Wahl
?
Innovative Web Design | Malachite Technologies
Innovative Web Design | Malachite TechnologiesInnovative Web Design | Malachite Technologies
Innovative Web Design | Malachite Technologies
malachitetechnologie1
?
Smarter RAG Pipelines: Scaling Search with Milvus and Feast
Smarter RAG Pipelines: Scaling Search with Milvus and FeastSmarter RAG Pipelines: Scaling Search with Milvus and Feast
Smarter RAG Pipelines: Scaling Search with Milvus and Feast
Zilliz
?
STRING FUNCTIONS IN JAVA BY N SARATH KUMAR
STRING FUNCTIONS IN JAVA BY N SARATH KUMARSTRING FUNCTIONS IN JAVA BY N SARATH KUMAR
STRING FUNCTIONS IN JAVA BY N SARATH KUMAR
Sarathkumar Narsupalli
?
Testing Tools for Accessibility Enhancement Part II.pptx
Testing Tools for Accessibility Enhancement Part II.pptxTesting Tools for Accessibility Enhancement Part II.pptx
Testing Tools for Accessibility Enhancement Part II.pptx
Julia Undeutsch
?
State_of_AI_Transformation in Germany.pdf
State_of_AI_Transformation in Germany.pdfState_of_AI_Transformation in Germany.pdf
State_of_AI_Transformation in Germany.pdf
VaradRajanKrishna
?

Nodejs Intro

  • 1. Node.js ¡°Because nothing blocks, less-than-expert programmers are able to develop fast systems.¡± http://nodejs.org/#about 04/2010 Rocco Georgi, PavingWays Ltd.
  • 2. Node.js written in C and JavaScript I/O framework evented non-blocking server-side JavaScript CommonJS module system using V8 04/2010 Rocco Georgi, PavingWays Ltd.
  • 3. written in C ./con?gure make make install #> node my?le.js 04/2010 Rocco Georgi, PavingWays Ltd.
  • 4. I/O network I/O ?le I/O * I/O 04/2010 Rocco Georgi, PavingWays Ltd.
  • 5. evented var tcp = require('tcp'); var server = tcp.createServer(function (socket) { socket.setEncoding("utf8"); event handlers socket.addListener("connect", function () { socket.send("hellorn"); for anything }); socket.addListener("receive", function (data) { event loop }); socket.send(data); no threads socket.addListener("eof", function () { socket.send("goodbyern"); socket.close(); }); }); server.listen(7000, "localhost"); 04/2010 Rocco Georgi, PavingWays Ltd.
  • 6. non-blocking I/O is never blocking anything callbacks on anything everything in a single thread + loop very small memory footprint 04/2010 Rocco Georgi, PavingWays Ltd.
  • 7. server-side JS V8 engine CommonJS: ?le = module // this loads circle.js and the sys object var circle = require('./circle'); var sys = require('sys'); // use the sys and circle object sys.puts('circle area at radius 4 = ' + circle.area(4)); no window object 04/2010 Rocco Georgi, PavingWays Ltd.
  • 8. Bene?ts low memory footprint per connection high concurrency ¡°hanging¡± requests -> Comet custom TCP/HTTP servers active module community e.g. WebSockets server 04/2010 Rocco Georgi, PavingWays Ltd.

Editor's Notes