Node-RED:IBM开源的物联网低代码编程工具,从云端到边缘端都可以集成的IoT粘合剂_技术文章

Node-RED是IBM开源的物联网编程工具,用于以新颖有趣的方式(拖拉拽)将硬件设备、API 和在线应用服务连接在一起。它提供了一个基于浏览器的编辑器,可以使用面板中的各种节点轻松地将流连接在一起。Node-RED可在物联网场景的云端或边缘端部署,基于Javascript语言开发,轻松与各种应用集成,作为物联网场景的粘合剂,让您更轻松的管理和连接您的设备。

基于浏览器的流式节点编辑

Node-RED 提供了一个基于浏览器的流编辑器,可以使用编辑器中的各种节点轻松地将流连接在一起。然后,只需单击一下即可将流程部署到运行状态。

可以使用富文本编辑器在编辑器中创建 JavaScript 函数。内置库允许您保存有用的函数、模板或流程以供重复使用。

基于Node.js构建

轻量级运行时基于 Node.js 构建,充分利用其事件驱动、非阻塞模型。这使得它非常适合在网络边缘的低成本硬件(例如 Raspberry Pi)以及云中运行。Node 的包存储库中有超过 225,000 个模块,可以轻松扩展调色板节点的范围以添加新功能。

在 Node-RED 中创建的流使用 JSON 存储,可以轻松导入和导出以便与其他人共享。在线流程库可让您与世界分享您最好的流程。

Node-RED缺点

缺点一:Node-RED有高并发的优点,因此适合I/O密集型应用,但是不适合CPU密集型应用,主要是由于JS单线程运行时间过长,将会导致CPU不能完全释放,导致后续I/O无法发起。解决方案:分解大型计算任务为多个小型的任务,使得运算能够实时释放,不阻塞I/O调用的发起。

缺点二:可靠性低,一旦某个环节崩溃,整个系统都会崩溃。解决方案:开多个进程,绑定多个端口。

缺点三:只支持单核CPU,不能充分利用CPU

缺点四:UI不能满足复杂的物联网应用需求。

缺点五:单体架构导致极限性能表现较差。

Node-RED应用场景

1.可用于设备端

Node-RED 是基于Node.js的应用程序,所以能够在Linux平台的任何设备上安装运行,比如流行的有树莓Pi,在工业领域有西门子IoT2000、研华 WISE PaaS 网关和美国的Groov EPIC,都安装了Node-RED应用程序,并且做好了完全的适配,开箱即用。

(图片来源:opto22)

2.可用于云端
Node-RED同样可以部署在云端,设备通过MQTT协议将数据传输到云端的MQTT Broker中,然后MQTT Broker将数据传递给云端的Node-RED,并存储通过Node-RED将数据存储在数据库中,最后通过Grafana这种可视化工具或第三方应用开发,去展示设备或统计数据。

谁在使用 Node-RED?

云腾五洲-小A
「云腾五洲」致力于通过AIoT与边缘计算的深度融合,打造下一代智能物联基础设施。以强大的物联网平台xAI边缘计算引擎为核心,赋能工业、能源、交通、城市等全场景智改数转,帮助企业突破数据与算力边界、推动IT与OT的融合,实现更高效、更智能的未来。