想像一下您去一家只有一位廚師的餐廳。你向服務生點義大利麵。服務生將訂單和其他顧客訂單告知廚師。廚師收到您的義大利麵訂單,但意識到煮義大利麵需要時間。它不會等待您的意大利麵煮熟,而是將其放在爐子中煮沸,同時開始處理其他訂單/
NodeJS 的工作原理類似。
Chef = Node.js 的主執行緒(Node.js 在其主執行緒上一次只能做一件事)
Waiter = 事件循環(事件循環接收傳入請求並決定如何處理它們)
廚房助理 = 工作執行緒或作業系統後台進程(Node.js 將工作委託給助理)
例如,在 I/O 作業中,當請求 Web 伺服器從檔案中取得內容時,NodeJS 只是將工作委託給作業系統的檔案系統,並準備好處理後續請求。當檔案系統響應時,它會處理該問題。
整個堆疊使用相同的語言:大多數前端開發都使用 Angular、React、Vue 等 JS 框架。如果後端應用程式用 Javascript 編寫,那將是一個巨大的優勢。全端開發者不需要學習新的後端開發語言。
基於微服務的架構的理想選擇:NodeJS 的單執行緒事件循環架構對於Web 開發人員來說比多執行緒架構方便得多,因為不存在可用執行緒完成的風險處理多個並發請求時。
快速開發:NodeJS 非常輕量級,NodeJS 伺服器可以輕鬆快速啟動和運行。
NPM: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}/`); });
這段程式碼的作用:
就是這樣。現在,執行 node server.js(其中 server.js 是程式碼檔案的名稱)將使您的 NodeJS 伺服器「啟動並執行」。
以上是NodeJS簡介【簡單講解】的詳細內容。更多資訊請關注PHP中文網其他相關文章!