Search icon CANCEL
Subscription
0
Cart icon
Cart
Close icon
You have no products in your basket yet
Save more on your purchases!
Savings automatically calculated. No voucher code required
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletters
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Node.js for Beginners

You're reading from  Node.js for Beginners

Product type Book
Published in May 2024
Publisher Packt
ISBN-13 9781803245171
Pages 382 pages
Edition 1st Edition
Languages
Author (1):
Ulises Gascón Ulises Gascón
Profile icon Ulises Gascón
Toc

Table of Contents (25) Chapters close

Preface 1. Part 1: Node.js Overview and JavaScript Language
2. Chapter 1: Introduction to Node.js 3. Chapter 2: Setting Up the Development Environment 4. Chapter 3: JavaScript Fundamentals 5. Chapter 4: Asynchronous Programming 6. Part 2: Node.js Ecosystem and Architecture
7. Chapter 5: Node.js Core Libraries 8. Chapter 6: External Modules and npm 9. Chapter 7: Event-Driven Architecture 10. Chapter 8: Testing in Node.js 11. Part 3: Web Application Fundamentals
12. Chapter 9: Handling HTTP and REST APIs 13. Chapter 10: Building Web Applications with Express 14. Part 4: Building Solid Web Applications with Node.js
15. Chapter 11: Building a Web Application Project from Scratch 16. Chapter 12: Data Persistence with MongoDB 17. Chapter 13: User Authentication and Authorization with Passport.js 18. Chapter 14: Error Handling in Node.js 19. Chapter 15: Securing Web Applications 20. Part 5: Mastering Node.js Deployment and Portability
21. Chapter 16: Deploying Node.js Applications 22. Chapter 17: Dockerizing a Node.js Application 23. Index 24. Other Books You May Enjoy

The Node.js single-thread architecture

When Node.js came out in 2009, it was a revolution in the web development world, as Ryan Dahl, the creator of Node.js, decided to use a very unusual approach at that time: a single-thread architecture.

In his presentation about Node.js at the JSConf (https://www.youtube.com/watch?v=EeYvFl7li9E), Ryan Dahl said he wanted to achieve two key things when building Node.js: server-side JavaScript and non-blocking I/O.

I/O needs to be done differently

The common approach for I/O operations in web applications is to create a new thread for each request. This is a very expensive operation because the memory consumption is very high and the performance is very low.

The idea behind this approach is to split the system resources and assign them to each thread. This is a very inefficient approach because, most of the time, the CPUs are idle, just waiting for the resources.

The other problem is that we are limited in the amount of memory that...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at €14.99/month. Cancel anytime