Node.js 是一個開源、跨平台的 JavaScript 運行環境,用於服務器端和網絡應用的開發。它基於 Chrome V8 JavaScript 引擎,由 Ryan Dahl 於2009年創建。Node.js 提供了一個事件驅動、非阻塞 I/O 的編程模型,使得它特別適用於構建高效、可擴展的網絡應用。

以下是 Node.js 的一些主要特點和優勢:
  1. 非阻塞 I/O: Node.js 使用了非阻塞 I/O 操作,這意味著它可以在執行 I/O 操作的同時繼續執行其他操作,而不需要等待 I/O 完成。這使得 Node.js 非常適用於處理大量的並行連接。
  2. 事件驅動: Node.js 基於事件驅動的編程模型。它使用事件循環和回調函數來處理事件,這使得編寫非同步代碼變得相對簡單。
  3. 單一線程: Node.js 使用單一線程來處理多個連接,但通過事件驅動和非阻塞 I/O 實現了高度的並發。對於某些應用,這可以提供更好的性能。
  4. 模組化: Node.js 使用 CommonJS 模組系統,允許開發者將代碼組織成獨立的模組,並方便地使用 npm(Node Package Manager)來安裝、分享和管理這些模組。
  5. 快速的 V8 引擎: Node.js 使用 Google Chrome 的 V8 引擎,該引擎是一個高性能的 JavaScript 引擎,將 JavaScript 代碼轉換成本機機器碼。
  6. 跨平台: Node.js 是跨平台的,可以在 Windows、Linux 和 macOS 等操作系統上運行。
  7. 廣泛的社區和生態系統: Node.js 擁有龐大的開發者社區和豐富的生態系統。有大量的第三方模組和工具,可以用於擴展 Node.js 的功能。
Node.js 主要用於構建服務器端應用,如 Web 應用、API 服務、即時通信應用等。它也被廣泛應用於開發工具、構建工作流、前端構建工具等領域。

Node-RED 是 IBM Emerging Technology 開發,是建立在 Node.js 上的一個開源流程編輯器,主要用於物聯網(IoT)應用和數據流程自動化。它提供了一個直觀且可視化的方式,讓使用者能夠連接不同的設備、服務和 API,並在它們之間建立數據流程。

以下是 Node-RED 的一些主要特點:
  1. 可視化編輯: Node-RED 提供了一個基於瀏覽器的可視化編輯器,使用者可以透過拖放方式,建立、編輯和連接不同的節點,而不需要編寫複雜的程式碼。
  2. 節點(Node): Node-RED 的基本單位是節點,每個節點代表一個功能或一個處理步驟。節點可以是數據來源、數據處理、數據存儲,或者是與外部服務的連接。
  3. 豐富的節點庫: Node-RED 附帶了大量的預建節點,這些節點支援與各種設備、服務和協議的集成,包括 MQTT、HTTP、TCP、WebSocket、MySQL、MongoDB 等。
  4. 支援自訂節點: 除了預建節點外,使用者還可以創建自己的自訂節點,以擴展 Node-RED 的功能。
  5. 強大的流程控制: Node-RED 支援流程控制,使使用者能夠按照特定條件或事件來控制數據的流動。
  6. 整合性良好: Node-RED 可以輕鬆與其他工具、平台和服務整合,使其成為物聯網應用和自動化流程的理想工具。
  7. 開源和擴展性: Node-RED 是開源的,並且有一個活躍的社區。它支援插件擴展,使開發者能夠添加新的功能或整合新的技術。
Node-RED 常用於物聯網應用、自動化家居系統、數據可視化等領域。它以簡單易用和高度可擴展為特點,非常適合快速開發和測試應用。

Node-Red 官網

在 windows 安裝 Node-Red

  1. 下載 node.js 且安裝。

  2. node.js 官網







  3. 執行 cmd 並執行指令 npm install -g node-red



  4. 執行 CMD 並執行 Node.js





  5. 開啟瀏覽器,並輸入網址 http://127.0.0.1:1880/


執行第一支 Node-Red 程式

  1. 從左邊工具箱拉出 inject 元件。