IoT可視化編程環境Node-RED發佈1.0版本

經過兩年的開發,Node-RED終於發佈了1.0版,帶來了許多變化。Node-RED 1.0的主要新特性包括新的異步消息傳遞模型、新的完成API和默認的消息克隆。此外,可視化編輯器也經過了改進。

Node-RED是IBM爲簡化工業物聯網解決方案而創建的一個開源可視化編程環境,它支持通過連接表示物理設備、雲系統、數據庫和API等的節點來創建複雜的系統。節點從任何輸入節點接收消息,處理它,並將其傳播到輸出節點。整個結果組成了系統執行的計算。

Node-RED提供大量的節點來處理各種常見的任務,包括髮送和接收HTTP/UDP/TCP/MQTT消息、運行命令、處理文件,還包括用於簡化複雜邏輯構建的節點,比如調試節點、信息多路複用器、分離器、消息緩衝區等等。更多的節點可以從Node-RED庫中獲得。

遷移到完全異步的消息傳遞模型——這意味着所有節點現在都具有異步行爲,而不是說有些節點是異步的,有些是同步的——爲Node-RED帶來了一些一致性。然而,這需要開發人員確保他們現有的流不依賴於任何同步節點。在以前的版本中,如果你有一個完全由同步節點組成的流,則消息將在一次JavaScript事件循環中流經所有節點。在Node-RED 1.0中,每個節點處理其輸入消息,然後將控制權交給主事件循環。事件循環的下個步驟將根據運行時內部隊列上的優先級處理該消息或其他消息。

切換到完全異步的消息傳遞是Node-RED路線圖未來功能的先決條件,即將代碼插入流以自定義消息路由路徑的特性。此外,由於完全同步節點的序列可以在不可預測的時間跨度內劫持事件循環,所以消除這個行爲爲使用超時控制未進入過時狀態的系統鋪平了道路,並且保證每個進入系統的消息有大量的計算時間。

與新的異步消息傳遞模型相關,節點現在可以使用新的API來指定何時完成消息傳遞。簡而言之,當節點接收到新消息時,它還將接收特定於該消息的send和done回調,從而使運行時可以精確地跟蹤哪些消息已被完全處理。這裏還引入了一個Complete節點,可以在節點沒有輸出完成處理時觸發它。所有現有的節點應該逐漸遷移到新的API,但是沒有必要着急,因爲Node-RED運行時在一段時間內仍然支持舊的API。

最後,引入異步消息傳遞意味着默認情況下將克隆所有消息。這與以前的模型有很大的不同,以前的模型努力避免消息重複。雖然新行爲肯定會對性能產生影響,但它將確保多個異步更改時消息的正確性和無損性。

最後,Node-RED可視化編輯器面板經過了重新組織,使用起來更加直觀。許多節點被刪除了,包括Twitter、電子郵件、Feedparser等。子流可配置性和JSON編輯器都經過了改進,現在對新手來說更友好了。

Node-RED可以運行在主要的操作系統上,包括macOS、Windows和Linux,以及物聯網設備和工業機器上。你可以使用Docker鏡像輕鬆地運行它。

原文鏈接:

IoT Visual Programming Environment Node-RED Hits 1.0

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章