- Tổng đài 24/7: 1800 646 881
- Đăng nhập
- 3
Node.js là một run-time environment (RTE) vô cùng thông dụng, giúp các nhà phát triển xây dựng tính năng cho hàng triệu trang web trên thế giới. Hãy cùng chúng tôi tìm hiểu về Node.js và vai trò và lý do tại sao bạn nên sử dụng nền tảng này qua bài viết sau đây.
Từ những ngày đầu phát triển, JavaScript được dùng để viết kịch bản cho các máy khách (client-side scripting) bởi ngôn ngữ này chỉ c sử dụng được ở thẻ <script>
. Ra đời vào năm 2009 và được tạo ra bởi kỹ sư phần mềm Ryan Lienhart Dahl, Node.js cung cấp mọi thứ cần thiết để hoàn thiện một chương trình được viết bằng JavaScript.
Node.js là một RTE có thể hoạt động đa nền tảng, dựa trên mã nguồn mở để xây dựng các ứng dụng một cách nhanh chóng và có khả năng mở rộng. Được xây dựng trên “V8 JavaScript Engine” của Google Chrome với cấu trúc I/O non-block, mô hình event-driven (hướng sự kiện) giúp nó hoạt động hiệu quả với các ứng dụng thời gian thực.
Node.js sử dụng cấu trúc “Single Thread Event Loop” để xử lý nhiều máy khách cùng một lúc. Để hiểu điều này, chúng ta cần phải biết cách ngôn ngữ như Java xử lý đồng thời đa luồng các máy khách.
Có một tình huống thực tế đặt ra là có một số lượng lớn các yêu cầu từ các máy khách khác nhau gửi tới máy chủ và chờ được phản hồi. Lúc này, máy chủ phải xử lý từng yêu cầu trước khi trả kết quả. Và mô hình đa luồng được dùng để xử lý các yêu cầu cùng một lúc. Trong một nhóm luồng cụ thể được chỉ định, khi có một yêu cầu gửi đến, một luồng riêng lẻ được lựa chọn tách ra để xử lý yêu cầu đó. Node.js hoạt động hoàn toàn khác, chúng ta hãy xem từng bước mà nó thực hiện:
Node.js sử dụng ít luồng và ít tài nguyên/bộ nhớ hơn, nên kết quả là nó thực thi tác vụ nhanh hơn. Vì vậy, kiến trúc đơn luồng này có hiệu suất hoạt động không kém gì kiến trúc đa luồng. Khi cần sử dụng nhiều dữ liệu để xử lý một số lượng lớn các tác vụ, thì việc sử dụng các ngôn ngữ đa luồng như Java thực sự mang lại hiệu quả. Nhưng Node.js sẽ là lựa chọn tốt nhất dành cho các ứng dụng thời gian thực.
Trải qua gần 14 năm phát triển, Node.js đã nhanh chóng trở thành nền tảng được sử dụng phổ biến và rộng rãi. Node.js được cộng đồng các nhà phát triển/thiết kế yêu thích, bởi những tính năng tuyệt vời mà nó đem lại. Cụ thể đó là:
Một thực tế không thể phủ nhận là Node.js có tốc độ phát triển nhanh chóng mặt và mức độ phổ biến rộng rãi hơn bao giờ hết. Chỉ riêng năm 2018, đã có hơn 1 tỷ lượt tải xuống Node.js và theo W3Techs, Node.js được sử dụng bởi 20 triệu trang web trên internet chiếm 1,2% tổng số các trang web trên thế giới. Các ứng dụng mà Node.js thường được lựa chọn:
Ứng dụng rộng rãi cho các phần mềm và trang web nên không ngạc nhiên khi các công ty lớn trên thế giới cũng tin tưởng và sử dụng Node.js. Có thể kể đến một số cái tên nổi bật như:
Bên cạnh đó, còn rất nhiều những cái tên cần phải nhắc đến như: Twitter, Spotify, Ebay, Medium, Reddit, Linkedin… như minh chứng cho sự phổ cập rộng rãi của nền tảng Node.js.
Node.js không phải là ngôn ngữ lập trình. Thay vào đó, đó là một RTE được dùng để chạy JavaScript bên ngoài trình duyệt.
Thời gian chạy Node.js được xây dựng trên nền tảng ngôn ngữ lập trình JavaScript và giúp tự chạy các framework. Tóm lại, Node.js là một môi trường hay một nền tảng cho các nhà phát triển, nhà thiết kế ứng dụng hoặc trang web.
Các nhà phát triển thường chỉ sử dụng Node.js để xây dựng máy chủ, nhưng điều này không chính xác. Bởi Node.js có thể được sử dụng cả ở front-end và back-end. Và đây là lý do để dẫn đến kết luận trên:
Node.js có thể chạy trên tất cả các hệ điều hành như Mac, Windows, Linux và cách cài đặt trên các hệ điều hành cũng rất đơn giản:
brew install node
sudo apt install nodejs
” hoặc “sudo apt update
”.Kiểm tra version Node.js đã cài đặt:
node -v
hoặc node –version
NPM là hệ sinh thái package của Node.js. Nó là hệ sinh thái lớn nhất của tất cả các thư viện nguồn mở trên thế giới, đã có sẵn hơn 1 triệu gói và đang được phát triển thêm. NPM sử dụng miễn phí và có rất nhiều developer nguồn mở đã và đang đóng góp cho nó hàng ngày.
NPM đính kèm với một ứng dụng code out-box, bạn chỉ cần truy cập trang web NPM để tìm kiếm gói bạn cần và cài đặt nó bằng một lệnh. Bạn cũng có thể quản lý các phiên bản của package, xem xét các phụ thuộc và thậm chí thiết lập các tập lệnh tùy chỉnh ở các dự án của bạn thông qua tiện ích dòng lệnh này.
Có thể nói NPM là hệ sinh thái được ưa chuộng nhất của cộng đồng sử dụng Node.js. Nền tảng Node.js thu hút một số lượng lớn các nhà phát triển phần lớn do hỗ trợ package tuyệt vời của nó. Ngoài ra, bạn có thể tham khảo một số package phổ biến như:
Cách cài đặt các NPM Packages:
npm install <package-name>
Có thể cài đặt nhiều Packages cùng 1 lúc:
npm install <pkg-1> <pkg-2> <pkg-3>
Chúng ta hãy bắt đầu với việc viết “Hello World” trên Node.js, ta sẽ tạo một máy chủ với Node.js và nhận về kết quả đầu ra là “Hello World” trên yêu cầu máy chủ. Trước khi bạn bắt đầu, hãy chắc chắn tự thiết lập với một trình tex-editor tốt và để cho ra kết quả “Hello World” đây sẽ là dòng code bạn sử dụng:
{{EJS0}}
Ta ghi lại tệp này theo định dạng ‘server.js‘ sau đó hãy đến thiết bị đầu cuối và khởi động máy chủ bằng lệnh “node server.js
”. Máy chủ sẽ bắt đầu chạy ngay, để xác minh đầu ra, hãy mở “http:// localhost: 3000
” bằng trình duyệt của bạn. Bạn sẽ nhìn thấy kết quả “Hello World! Welcome to Node.js”
Node.js đi kèm với một module tích hợp có tên là “HTTP” cho phép Node.js chuyển dữ liệu qua Giao thức HTTP (Hyper Text Transfer Protocol). Ở đoạn code trên, trước tiên ta cần tải module HTTP rồi sau đó mới sử dụng phương thức Createserver để chấp nhận yêu cầu và trả về phản hồi bằng code trạng thái. Cuối cùng, ta chờ xem kết quả tại một port xác định. Nếu bạn làm đúng theo các bước thì xin chúc mừng bạn vừa tạo ra máy chủ đầu tiên trong Node.js.
Theo cách hiểu của bạn thì một server (máy chủ) là gì? Một máy chủ thực hiện các yêu cầu của máy khách thông qua phần mềm của nó (phổ biến nhất là Apache hoặc Nginx), thực hiện bộ tác vụ cần thiết và cuối cùng gửi lại phản hồi cho máy khách. Express là một framework sẽ giúp chúng ta tạo một máy chủ với Node.js.
Express.js là một ứng dụng framework tối giản và linh hoạt mang đến cho người dùng một bộ tính năng mạnh mẽ cho các ứng dụng web và di động. Nó cho phép thêm các bảng tuyến đường và thiết lập phần mềm trung gian cho ứng dụng của bạn. Bạn có thể cài đặt Express bằng lệnh “npm install express --save
”.
Chúng ta đã dùng tiện ích HTTP được xây dựng để tạo máy chủ. Bây giờ, hãy tạo một server “Hello World” bằng Express.js và như thường lệ, hãy mở trình text-editor của bạn ra và nhập đoạn code sau đây:
{{EJS1}}
Tiếp theo, chúng ta sẽ chạy máy chủ với dòng lệnh “node server-express .js
” và sau đó kiểm tra kết quả đầu ra tại địa chỉ “http://localhost:3000
“ trên trình duyệt, bạn sẽ thấy kết quả đầu ra là “Hello World”.
Node.js là một nền tảng lập trình phổ biến để xây dựng các ứng dụng quy mô lớn cần xử lý nhiều yêu cầu cùng một lúc. Cơ chế non-blockig I/O đơn luồng làm cho nó trở thành một lựa chọn tuyệt vời cho cả các ứng dụng truyền dữ liệu và real-time.
Node.js có một cộng đồng lớn phát triển tích cực với kho lưu trữ gói nguồn mở NPM vô cùng đa dạng. Để bắt đầu với Node.js. Chúng tôi đã cho bạn xem cách cài đặt và tạo một máy chủ trên nền tảng Node.js, vì vậy tất cả những gì còn lại là xem xét cách bạn sử dụng và triển khai Node.js cũng như thời gian bạn bỏ ra để nghiên cứu nó. Bạn cũng có thể mở rộng kiến thức của mình bằng cách truy cập tài liệu chính thức của Node.js tại các nguồn học liệu phong phú trên Internet.
Hy vọng bài viết trên đây đã mang lại những thông tin hữu ích cho các bạn khi tìm hiểu về nền tảng Node.js. Nếu bạn có thắc mắc về nội dung trong bài viết trên, hãy để lại ở bên bình luận bên dưới, BKHOST sẽ trả lời bạn trong thời gian sớm nhất.
P/s: Bạn cũng có thể truy cập vào Blog của BKHOST để đọc thêm các bài viết chia sẻ kiến thức về lập trình, quản trị mạng, website, domain, hosting, vps, server, email,… Chúc bạn thành công.
Mua tên miền .VN tại BKHOST
Giá chỉ từ 750k/năm. Kiểm tra tên miền .VN đẹp và đăng ký ngay hôm nay!