Thứ Ba, 1 tháng 3, 2016

Tìm hiểu về Node Js cơ bản



NodeJS là gì?

  • Node.js là một mã nguồn mở, một môi trường cho tất cả các máy chủ và các ứng dụng mạng.
  • Node.js sử dụng động cơ V8 JavaScript Cửa Google để thực thi mã, và một tỷ lệ lớn tất cả các mô-đun cơ bản được viết bằng JavaScript. Các ứng dụng Node.js thì được Việt Bản JavaScript.
  • Node.js chứa một thư viện was built-in ứng dụng phép cho Hoạt động như một Webserver nhưng không cần phần mềm như Nginx, Apache HTTP Server hoặc IIS.
  • Node.js cung cấp kiến ​​trúc hướng sự kiện (event-driven) VA non-blocking I / O API, tối ưu hóa thông lượng của các ứng dụng và có khả năng mở rộng cao
  • Mọi hàm trong Node.js không đồng bộ (asynchronous). Do đó, nhiệm vụ sẽ được xử lý và thực hiện chế độ nền (xử lý nền)

Ứng dụng của NodeJS

  • Xây dựng máy chủ WebSocket (Trò chuyện máy chủ)
  • Hệ thống thông báo (Giống như facebook hayTwitter)
  • Ứng dụng client file tải lên trên
  • Các máy chủ quảng cáo
  • Các ứng dụng dữ liệu thời gian thực khác.

NodeJS điểm Nhược

  1. Ứng dụng nặng tốn tài nguyên Nếu bạn cần phải xử lý các ứng dụng tốn tài nguyên CPU mã hóa như video, chuyển tập tin đổi, giải mã all mã hóa ... hoặc các ứng dụng khác tương tự như vậy nó sẽ không được sử dụng NodeJS (Lý do: NodeJS được viết bằng C ++ & Javascript, không phải thông qua thêm 1 trình biên dịch của NodeJS sẽ lau hơn 1 chút). trường hợp này bạn viết 1 Addon C ++ cho tích kết hợp với NodeJS để tăng hiệu suất tối đa!
  2. NodeJS và khác ngôn ngữ NodeJS, PHP, Ruby, Python NET ... thì việc cuối cùng là phát triển các ứng dụng Web. NodeJS mới sơ khai như các ngôn ngữ lập trình khác. Vậy, vì vậy bạn làm NodeJS vọng không hi sẽ không mất trên PHP, Ruby, Python ... ra thời điểm này. Nhưng với NodeJS bạn có thể có 1 ứng dụng như mong đợi, điều đó là chắc chắn!

Ưu điểm NodeJS

  1. Đặc điểm nổi bật của Node.js là nó đã nhận và xử lý nhiều kết nối chỉ với một sợi đơn. Điều này giúp hệ thống tốn ít RAM nhất và chạy nhanh nhất khi không được tạo mới sợi cho mỗi giống truy vấn PHP. Ngoài ra , tận dụng ưu điểm chặn phi I / O trong đó Javascript Node.js tận dụng tối đa tài nguyên máy chủ mà không được tạo ra độ trễ như PHP
  2. JSON API Với Những hướng sự kiện, non-blocking I / O (Input / Output) và mô hình kết hợp với Javascript là sự lựa chọn tuyệt vời cho các dịch vụ Webs làm bằng JSON.
  3. Ứng Dụng trên 1 trang (Single trang ứng dụng) Nếu bạn định viết 1 ứng dụng thể hiện trên 1 trang (Gmail?) NodeJS nhiều hợp phù tới Lâm. Với khả năng xử lý nhiều yêu cầu / s đồng thời thời gian phản hồi nhanh. các ứng dụng bạn định viết không bạn muốn nó tải lại trang, bao gồm nhiều yêu cầu từ người dùng cần sự hoạt động nhanh để thể hiện sự chuyên nghiệp thì NodeJS sẽ là sự lựa chọn thư mục.
  4. công cụ tách vỏ unix NodeJS sẽ Tấn Dũng max Unix để hoạt động. Tức là NodeJS đã không xử lý treo nghìn Quy trình và trả ra 1 luồng làm cho hiệu xuất hoạt động đạt mức tối đa nhất và tuyệt vời nhất.
  5. Streamming dữ liệu (Luồng dữ liệu) Các web thông thường gửi yêu cầu HTTP và nhận phản hồi lại (Luồng dữ liệu). Giả xử sẽ cần xử lý 1 luồng lưu trữ liệu cực lớn, NodeJS sẽ xây dựng tất cả các Proxy phân vùng tất cả dữ Lương liệu để đảm bảo tối đa hoạt động cho tất cả các luồng dữ liệu khác.
  6. Ứng dụng Web thời gian thực Với sự ra đời của các ứng dụng di động và HTML 5 là Node.js nhiều quả hiệu trên xay dung những ứng dụng thời gian thực (applications thời gian thực) như ứng dụng trò chuyện, các dịch vụ mạng xã hội như Facebook, Twitter, ...  

Đối với những ưu - nhược trên, khi nào chúng ta sẽ sử dụng Node.js?

Node.js nhiều hấp dẫn. Nhưng khi bạn quyết định bắt tay xay dung một dự án bằng Node.js, hãy đặt câu hỏi:. "Tôi có thể được sử dụng Node.js hay không" Và sau đây là một trong những câu trả lời cho điều đó.
Bạn KHÔNG được sử dụng Node.js trên:
  • Xây dựng các ứng dụng hao tốn tài nguyên. Bạn đừng mơ mộng đến Node.js khi bạn muốn Đặng Việt một chương trình chuyển đổi video Node.js hay bị rơi vào trường hợp thắt cổ chai về làm việc với những file phân lượng lớn .
  • Một ứng dụng chỉ toàn CRUD:. Node.js làm PHP không nhanh hơn khi bạn lam tất cả các nhiệm vụ mang nặng tính I / O như vậy Ngoài ra, với sự ổn định lâu dài của máy chủ web kịch bản khác, các CRUD nhiệm vụ của nó là tối ưu hóa. Còn Node.js? Nó sẽ lòi ra những API cực cực kỳ ngố ngẩn.
  • Khi bạn cần su ổn định trong ứng dụng của bạn: Chỉ với 4 năm phát triển của mình (2009-2013), version của Node.js đã 0.10.15 (hiện tại để thoi điểm là v0.10.35 này). mọi API sẽ không thay đổi - một cách ngược không tương thích - hãy thật cẩn thận cho những API bạn sử dụng, và luôn đặt câu hỏi: "Khí nó thay đổi, nó sẽ ảnh hưởng gì đến dự án của tôi Diễn Diễn"
  • Và quan trọng nhất:. Bạn chưa hiểu hết về Node.js Node.js cực kỳ nguy hiểm trong trường hợp này, bạn sẽ Rơi vào một thế giới đầy rẫy CAM bẫy, khó khăn Với API nhất hoạt động theo phương thức do not chặn / async việc không hiểu rõ vấn đề sẽ làm cho việc xuất hiện những lỗi mà thậm chí bạn không biết nó xuất phát từ đâu? và mệt mỏi hơn nữa: Khi cộng đồng Node.js chưa đủ lớn mạnh, và sẽ có sự ít hỗ trợ từ cộng đồng. Khí nhưng hầu hết cộng đồng không khá hơn bạn là bao.
Vậy bạn nên được sử dụng Node.js khi nào?
  • Node.js thực sự tỏa sáng trong việc xây dựng API RESTful (json). Gần như không có ngôn ngữ nào xử lý JSON dễ dàng hơn so với Javascript, chưa Kể cả máy chủ thường API không thực hiện những xử lý nặng nề nhưng lượng yêu cầu đồng thời thì nhiều cao. Mà Node.js thì xử lý do not blocked. Chẳng còn gì thích hợp hơn Node.js trong trường hợp này!
  • Những ứng dụng đòi hỏi tất cả các giao thức kết nối chứ khác không chỉ http. Như việc hỗ trợ giao thức tcp, từ đó bạn không xây dựng bất kỳ một giao thức tùy chỉnh nào đó một cách dễ dàng.
  • Những ứng dụng thời gian thực: Khỏi không nói vì Node.js Dương như sinh ra để lam this việc!
  • Những trang web stateful. Node.js xử lý mọi yêu cầu trên cùng quá trình một giúp cho việc xây dựng bộ nhớ đệm chưa bao giờ đơn giản đến thế: Hãy lưu nó vào một cầu toàn biến đổi, và thế là mọi yêu cầu sẽ đã không truy cập đệm bộ nhớ mà. Caching sẽ Côn quá đau đầu như trước đây, và bạn đã không tiết kiệm cũng như chia sẻ Trạng thái của một khách hàng với khách hàng khác ngay trong ngôn ngữ, chứ bạn không cần thông qua bộ nhớ ngoài!
  • Quan trọng nhất: Bạn yêu thích và bạn muốn sử dụng nó.

Hello World trong Node.js

đây Dưới là đoạn mã xuất ra màn hình "Hello World" của Node.js:
JavaScript
var  http  =  yêu cầu ( 'http' );
http . createServer ( chức năng ( yêu  cầu , phản  ứng ) {
    phản ứng . writeHead ( 200 , { 'Content-Type' : 'text / plain' });
    Phản ứng . End ( 'Hello World \ n' );
}) Nghệ ( 8080 , &  quot ;. 127.0.0.1  &  quot ;);
giao diện điều khiển . log ( 'Server running out http://127.0.0.1:8080' );

Tham khảo:

Tổng kết

Bài viết có giới thiệu sơ qua về NodeJS cũng như một số ưu điểm, nhược điểm và những trường hợp NodeJS nên, không nên sử dụng. Ở phần sau tôi sẽ giới thiệu về NodeJS với socket.io và ứng dụng trò chuyện cơ bản sử dụng socket.io như HTML và JavaScript.

0 nhận xét: