Có thể tại thời điểm này, bạn cũng không còn xa lạ gì với Node. js nữa rồi. Nhờ có nút. js mà JavaScript có thể chạy được trong môi trường máy chủ. Do đó, bạn chỉ cần biết JavaScript [và một số thứ nữa] là đã có thể viết mã back-end ngon lành mà không cần phải học thêm PHP, ASP. BỌC LƯỚI,. Vì vậy, bài viết này mình sẽ giúp bạn tìm hiểu Node. js cơ bản
Mục đích của bài viết
- Tìm hiểu các đặc điểm cơ bản của Node. js
- Các ứng dụng của Node. js
- Tải và cài đặt Node. js
- Viết một máy chủ dưới dạng Hello World với Node. js
Nếu như bạn đã sẵn sàng để tìm hiểu Node. js cơ bản thì mình start nhé
Các đặc điểm cơ bản của Node. js
Nút. js là gì?
Nút. js là môi trường thực thi JavaScript bên ngoài trình duyệt, được xây dựng dựa trên công cụ JavaScript V8 của Chrome
Công cụ JavaScript V8 của Chrome được viết bằng C++, giúp biên dịch mã JavaScript thành mã hóa máy một cách nhanh chóng
Hơn nữa, Node. js là mã nguồn mở, miễn phí và có thể chạy trên nhiều nền tảng. Windows, Linux, Unix, Mac OS X, Hệ thống nhúng,
Nút. js có khả năng xử lý bất đồng bộ
Đây là điểm tối ưu nhất của Node. js so với các nền tảng khác [PHP, ASP,. ]
Với nút. js, mọi tiến trình đang diễn ra nhiều thời gian như tệp đọc/ghi, truy vấn cơ sở dữ liệu, tạo nội dung cho trang web động,. all is non-blocking
Nghĩa là bạn chỉ cần gửi yêu cầu, viết hàm xử lý khi có kết quả, rồi có thể chuyển ngay sang yêu cầu tiếp theo mà không cần phải chờ đợi
Nút. js chạy đơn luồng
Theo mình biết, đối với PHP [Java, ASP. BỌC LƯỚI,. ] Mỗi yêu cầu gửi lên sẽ được đưa vào một luồng riêng để thực thi. Điều này dẫn đến tiêu tốn nhiều bộ nhớ
Ngược lại, nút. js lại chạy single-threaded. Nghĩa là mỗi yêu cầu gửi lên sẽ được cho vào một hàng đợi sự kiện. Nút. js sẽ chạy một vòng để duyệt hàng đợi sự kiện này và các lần xử lý các yêu cầu theo kiểu bất đồng bộ
Chính vì vậy, Node. js sẽ giúp tiết kiệm điện năng cho bộ nhớ
Bạn nghĩ sao về vấn đề này, nếu không sợ thì để lại bình luận chia sẻ quan điểm của mình nhé
Các ứng dụng của Node. js
Với những ưu điểm của mình, Node. js thường được sử dụng để
- Phát triển ứng dụng Real-time. mạng xã hội, trò chuyện,
- Ứng dụng Single Page Application [SPA]. bởi những ứng dụng này thường yêu cầu rất nhiều đến máy chủ thông qua AJAX
- Ứng dụng truy vấn tới cơ sở dữ liệu NoSQL như MongoDB, CouchDB,
- Ứng dụng CLI. đây là các công cụ sử dụng dòng lệnh
- ...
Theo bạn thì Node. js có thể dùng để làm gì nữa nhỉ?
Tải và cài đặt Node. js
Bài viết này mình sẽ hướng dẫn các bạn cài đặt Node. js trên môi trường Windows [vì máy mình hiện chỉ cài đặt Windows 7]
Các bước thực hiện
Đầu tiên, bạn tải xuống bản cài đặt Node. js tại trang chủ. You can select newest version. Tuy nhiên, mình sẽ chọn bản LTS [Hỗ trợ dài hạn]. Vì bản này thường sẽ ổn định và ít lỗi
Sau khi tải xong, bạn sẽ nhận được một tệp cài đặt [ví dụ:. nút-v8. 12. 0-x64. msi]. Bây giờ, bạn hãy nhấp vào để cài đặt
Một cửa sổ sẽ xuất hiện, sau đó bạn nhấp vào Chạy
You click Next to continue
Tiếp theo, bạn nhấn vào hộp kiểm để đồng ý với điều khoản, bản quyền phần mềm, rồi nhấn Tiếp theo để tiếp tục
Sau đó là lựa chọn thư mục cài đặt Node. js. Nếu không có gì đặc biệt [ví dụ như ổ C bị đầy] thì bạn cứ để mặc định, rồi nhấn Next để tiếp tục
Bước này, Nút. js sẽ cho phép bạn tùy chỉnh phần cài đặt. Tuy nhiên, bạn cứ để mặc định thôi. Sau này muốn thay đổi gì thì tính sau
Sau khi mọi thứ đã hoàn tất, bạn nhấn Cài đặt để bắt đầu cài đặt
Khi cài đặt xong, bạn nhấn Finish để kết thúc
Kiểm tra cài đặt thành công
Sau khi đã thực hiện xong các bước trên, bạn cần kiểm tra xem mình có thể làm việc bình thường với Node không. js hay chưa
Bạn mở CMD trên Windows lên rồi nhập câu lệnh sau
Nếu kết quả hiển thị như thế này là thành công
Các câu lệnh trên cho biết. Node version. js current is 8. 12. 0 and version npm [Node Package Manager] is 6. 4. 1
Viết một máy chủ dưới dạng Hello World với Node. js
Create file source
Đầu tiên bạn cần tạo một tệp mới với tên là hello-world. js bên trong một thư mục bất kỳ
Sau đó, sửa đổi nội dung của tập tin đó như sau
const http = require["http"];
const hostname = "localhost";
const port = 8000;
const server = http.createServer[[request, response] => {
response.statusCode = 200;
response.setHeader["Content-Type", "text/plain"];
response.end["Hello World!\n"];
}];
server.listen[port, hostname, [] => {
console.log[`Server running at //${hostname}:${port}/`];
}];
Giải thích file source
Đầu tiên, bạn khai báo mô-đun http - dùng để tạo máy chủ, tên máy chủ là localhost và cổng sử dụng là 8000 [bạn có thể thay đổi cổng tùy thích]
const http = require["http"];
const hostname = "localhost";
const port = 8000;
Tiếp theo, bạn khởi tạo máy chủ bằng cách sử dụng phương thức tạo Máy chủ của mô-đun http, với 2 tham số đầu vào là req và res
const server = http.createServer[[req, res] => {
res.statusCode = 200;
res.setHeader["Content-Type", "text/plain"];
res.end["Hello World!\n"];
}];
Với req là đại diện cho yêu cầu được gửi từ máy khách đến máy chủ và res là đại diện cho phản hồi từ máy chủ về máy khách
Tại đây có phản hồi
- Mã trạng thái là 200 - tức là yêu cầu đã được xử lý thành công
- Header with Content-type is text/plain - tức là nội dung phản hồi có kiểu văn bản bình thường [không phải json hay html]
- Nội dung của phản hồi là một đoạn văn bản đơn giản Hello World
Cuối cùng, bắt đầu cho máy chủ lắng nghe, với 2 tham số là cổng [cổng] và địa chỉ [tên máy chủ]
server.listen[port, hostname, [] => {
console.log[`Server running at //${hostname}:${port}/`];
}];
Chạy thử máy chủ và kiểm tra kết quả
Để chạy máy chủ, bạn mở CMD lên tại vị trí tệp nguồn vừa tạo và chạy lệnh
Nếu kết quả hiển thị ra Server running at //localhost:8000/
là thành công
Cuối cùng, bạn nhập địa chỉ //localhost:8000/
lên trình duyệt để kiểm tra lại
Như vậy là server đã chạy thành công rồi phải không bạn?
Lời kết
Trên đây là hướng dẫn tìm hiểu Node. js cơ bản. Hy vọng qua bài viết này bạn có thể thu được
- Hiểu các đặc điểm cơ bản của Node. js
- Biết các ứng dụng của Node. js
- Biết cách tải và cài đặt Node. js
- Viết một máy chủ dưới dạng Hello World với Node. js
Sắp tới mình dự kiến viết một loạt bài về cách viết RESTful API sử dụng Node. js, Express và MongoDB. Vì vậy, việc tìm hiểu Node. js cơ bản và cài đặt thành công là điều kiện tiên quyết
Hy vọng bạn sẽ tiếp tục theo dõi và ủng hộ blog của mình
Xin chào và hẹn gặp lại trong bài viết tiếp theo, thân ái
★ Nếu các bạn thấy bài viết này hay thì hãy theo dõi mình trên Facebook để nhận thông báo khi có bài viết mới nhất nhé