首頁 > web前端 > js教程 > NodeJS簡介【簡單講解】

NodeJS簡介【簡單講解】

Susan Sarandon
發布: 2024-11-22 21:28:24
原創
300 人瀏覽過

Introduction to NodeJS [Simple Explanation]

什麼是 NodeJS?

  • 開源、跨平台的 Javascript 執行環境。
  • 在 Javascript V8 引擎上運作(這是 Google Chrome 的核心)
  • 單執行緒並使用非同步程式設計。

如果NodeJS是單線程的,它如何處理多個請求?

想像一下您去一家只有一位廚師的餐廳。你向服務生點義大利麵。服務生將訂單和其他顧客訂單告知廚師。廚師收到您的義大利麵訂單,但意識到煮義大利麵需要時間。它不會等待您的意大利麵煮熟,而是將其放在爐子中煮沸,同時開始處理其他訂單/

NodeJS 的工作原理類似。
Chef = Node.js 的主執行緒(Node.js 在其主執行緒上一次只能做一件事)

Waiter = 事件循環(事件循環接收傳入請求並決定如何處理它們)

廚房助理 = 工作執行緒或作業系統後台進程(Node.js 將工作委託給助理)

例如,在 I/O 作業中,當請求 Web 伺服器從檔案中取得內容時,NodeJS 只是將工作委託給作業系統的檔案系統,並準備好處理後續請求。當檔案系統響應時,它會處理該問題。

為什麼我應該選擇 NodeJS 而不是其他後端應用程式?

  • 整個堆疊使用相同的語言:大多數前端開發都使用 Angular、React、Vue 等 JS 框架。如果後端應用程式用 Javascript 編寫,那將是一個巨大的優勢。全端開發者不需要學習新的後端開發語言。

  • 基於微服務的架構的理想選擇:NodeJS 的單執行緒事件循環架構對於Web 開發人員來說比多執行緒架構方便得多,因為不存在可用執行緒完成的風險處理多個並發請求時。

  • 快速開發:NodeJS 非常輕量級,NodeJS 伺服器可以輕鬆快速啟動和運行。

  • NPM:NodeJS 套件管理器是一個由全球開發人員編寫的龐大程式碼庫。它可以很容易地用作專案中的依賴項,從而減少編寫額外程式碼的工作量。

「NodeJS 伺服器可以毫不費力地快速啟動並運行」——有那麼簡單嗎?

是的。

const { createServer } = require('node:http');

const hostname = '127.0.0.1';
const port = 3000;

const server = createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Hello World');
});

server.listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}/`);
});
登入後複製

這段程式碼的作用:

  • 使用NodeJS的http模組。
  • 配置主機和連接埠。
  • 使用http模組的createServer方法建立伺服器。
  • 每當收到新請求時,都會呼叫 request 事件,並提供兩個物件:http.IncomingMessage 物件和 http.ServerResponse 物件。
  • 建立的伺服器監聽主機和連接埠。

就是這樣。現在,執行 node server.js(其中 server.js 是程式碼檔案的名稱)將使您的 NodeJS 伺服器「啟動並執行」。

以上是NodeJS簡介【簡單講解】的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板