Skip to main content Skip to footer

Article

Key differences between Node-RED and Crosser in Industrial IoT

Distributed computing - modular and drag ‘n drop

Latest update: January 2024 

Almost everyone that has tried to do some experiments with IoT projects have come across Node-RED, whether this was for a private hobby project or a business application. The reason is of course that Node-RED is a great tool, easy to get started with, large community support and free! 

At a first glance there are several similarities with the Crosser Node Intelligence solution. This blog post will try to outline similarities and key differences and the key rationale behind some of the main parts of Crosser’s Node Intelligence solution for Industrial IoT and Enterprise Integration.

Key takeaways

As many as 7 out of 10 Crosser customers started with Node-RED but changed to Crosser before roll-out into production or after experiencing serious limitations and challenges in production deployments. The most common reasons for changing from Node-RED to Crosser, according to our customers, centers around enterprise-level needs such as:
  1. Central management of distributed edge runtimes
  2. Simplicity for the whole life-cycle
  3. Integration of ML/AI for Smart Industry use cases
  4. Security & Permissions. Roles and external identity providers
  5. Data Observability. Monitor data flows and validate data quality
  6. Scalability and reliability
  7. Enterprise Support and SLA
This blog will cover all these topics, and more, in detail.

Edge and hybrid computing - modular and drag ‘n drop

Both Node-RED and Crosser have adopted a module based approach, where predefined modules are connected graphically to define the sequence of operations to perform on the data. This is a well-proven concept used in many business automation tools as well as data analysis/signal processing tools and allows non-programmers to define processes or algorithms.

For industrial IoT applications you will need modules to get data from your machines using common industrial protocols such as OPC, Modbus, Profinet, MQTT and HTTP. When implementing edge streaming analytics you want to deliver the results to other systems or services, hence you will need modules that can send data to different cloud services and on-premise systems or machines.

Finally you will need processing modules (data cleaning, normalization, filters, conditions, algorithms…) that can process your data to achieve your desired outcome. Both Node-RED and Crosser offer these capabilities. So on the surface the two tools may look similar, but there are some significant differences under the hood that have a major impact on the products.

Computing platform

First, Node-RED is written in Javascript running on the NodeJS platform, while the Crosser Node is written in C# running on .NET core. This results in the following main differences:

  1. Performance - The Crosser Node can process significantly more data on the same hardware platform. The actual number will depend on the use case but a 10x difference is not uncommon.

  2. Dynamic Loading of Analytics Modules and Connectors - Users can easily add new modules to the central library and then use these in any node, without having to update the local software

  3. Multi-language Support - Crosser offers freedom to choose different languages when using custom code modules, for example C#, Python and Javascript*.

  4. Machine Learning - The Crosser Node is the perfect platform for running your machine learning models at the Edge and distributed environments. Through the integration with a standard Python environment you can host models built with any of the common ML libraries for Python. In addition, the Crosser Ccontrol Center manages your model files and automatically distributes them to the Nodes where they are needed.

 

Feature

Node-RED

Crosser

Comment

Compute Platform

Node JS

.NET Core

Javascript vs C#. Interpreted vs compiled.

Performance ratio, messages per second

1

10

10x performance difference based on same processing flow on different HW platforms 

Machine Learning

None

Any Python framework

ML support makes the platform future proof

Read more about ML in the Edge (Blog) →

------------

*) Soon to be released

Module libraries 

One of the major advantages of Node-RED is the extensive library of modules, almost anything you want to do is already available as a module and easily accessible through the integrated repository. However, many of these modules are provided by the open source community and this introduces some challenges.

Lack of consistency means that it is not always trivial to connect modules from different providers and you may end up having to add conversion logic to get data from one module to the next. In many cases, there are also more than one alternative to choose from for a specific feature, which one should you use and what is the status of these alternatives, have they been tested in production environments and are they still supported?

Crosser provides an extensive library of modules that covers all the common use cases for industrial IoT applications and Enterprise Integrations. These modules are built with a consistent messaging model and user interface and are production ready and fully supported. This greatly simplifies the usage and minimizes the risk. Modules can also be provided by third parties under similar conditions and it is also possible to build your own modules using our code modules or open SDK.

Learn more about Crosser Flow Studio →

FlowCode Sync - Dynamical Loading of Modules

Modules are loaded dynamically into the generic runtimes (Crosser Nodes) when deploying flows. This greatly simplifies maintenance and continuous improvement of deployed use cases, without having to update the locally installed software or container.

Read more about the FlowCode Sync concept →

Crosser vs. Node-RED Test and Debug Illustration
Crosser Test & Debug with Real Data


Remote testing

Before a flow is deployed onto multiple nodes in production it must be tested. With Crosser you can verify your flows step-by-step by checking the data as it passes through each module. See individual messages as they are being processed or plot sensor data with the time series graph viewer. You can test run your flows in a safe sandbox environment, available as part of the cloud service, or you can connect the flow editor into any of the nodes you have deployed in the field, to verify your flows with real data accessible from your distributed nodes.

Once the flow has been verified in the development environment, it can be deployed into production from within the same UI. If the flow is developed for multiple deployments, the user can deploy the flow with different settings/parameters into several different production environments at the same time.

Life-cycle management

So far we have only talked about a single node and how to set up processing using a graphical front-end. This is the use case addressed by Node-RED. In most industrial IoT use cases you have multiple Nodes being deployed, often at different sites or even on mobile machinery. How do you manage such a complex deployment without adding significant life-cycle costs? Enter Crosser Control Center!

One Runtime, many Flows

Another difference between Crosser and Node-RED is Crosser's ability to execute many different flows on the same node (runtime installation). Existing flows can be updated and new flows be added without affecting other flows running on the same node. If one flow for some reason malfunctions, all the other flows on that node will still continue to run.

While Node-RED only offers the ability to run one flow containing subflows in each deployment. If one of these flows malfunctions, the whole node will stop running, and all of the flows will be affected.

Crosser vs. Node-RED General Architecture
Crosser vs. Node-RED General Architecture

Crosser Control Center

Node Orchestration and Management

The Crosser Control Center service is used to manage your Nodes. This is where you build flows using the Flow Studio visual design tool and then use the Control Center to decide what version of a flow that should be running on each Node. In contrast to single node flow editors like Node-RED, flow building and deployment are clearly separated operations with Crosser, to allow for the same flow to be used on any number of nodes.

The Crosser Control Center is designed to simplify the whole life-cycle management of distributed nodes, from on-boarding of new nodes to deploying new or updated flows and monitoring the operation of all your nodes. All operations can be performed as easily on a single node or a group of nodes. Groups are created by attaching labels to nodes, allowing for different schemes such as overlapping or hierarchical groups. Define groups that make sense for your use case and operate on these groups as easily as with a single node.

With the Control Center you get version control of flows, modules and node software. Upgrades and downgrades can easily be managed on any number of nodes. Don’t miss out on added features because you don’t want to touch a working system.

The Control Center capabilities, combined with the Flow Studio functionalities, unifies the proof of concept (POC) stages with the production stage into one environment. Removing several challenging steps from the deployment phase of your IoT project.

The Crosser Control Center is a pure management and configuration service. As soon as a flow is deployed on a node it runs autonomously, without relying on any connectivity to the cloud. The results of the data processing in an edge node is sent to wherever the flows specify.

 

Feature

Node-RED
(Local)

Crosser
(Centralized)

Benefits with Centralized management

Flow Deployment

One-to-one

One-to-many

Build/change once, deploy to any number of nodes with single operation

Flow version control

Git

Internal

Out-of-the-box version control fully integrated with deployment tools

Module version control

Per node

Per flow

Version specified per module in a flow

Credentials management

Per node

Central library

Upload once and then reuse any number of times

Resource management

Per node

Central library

Upload files, ML models and code once and automatically deploy to any number of nodes through flow references

Debug

Locally

Cloud

Test-run flows on any deployed node or in cloud sandbox

Debug source

Dedicated module

Built-in per module

Turn on debugging on any module while flow is running

Learn more about Crosser Control Center →

Crosser vs. Node-RED ML & AI Capabilities
Crosser for Distributing ML, AI and Custom Code

 

Flexibility, customization and ML

Using pre-built modules simplifies and speeds up the innovation process but even an ever-expanding library cannot meet all needs and requirements. Having different options to add customization is therefore important.

Comparing four ways of adding customization:

Feature

Node-RED

Crosser

Comment

ML frameworks

None

Any Python framework

TensorFlow, PyTorch, Scikit-Learn…

Code modules

JavaScript

Python, C#

Use Python for simplicity and C# for performance

Custom modules (SDK)

NodeJS/ JavaScript

.NET Core/C#

Use standard .NET toolchains to build your own modules with the same high-performance offered by the standard modules

Module builder

No

Universal Connectors for REST APIs

Build reusable modules with no coding

Crosser Monitoring Page for Enhanced Data Observability
Crosser Monitoring Page


Crosser FlowWatch

Data Observability - Comprehensive Status Reporting

Crosser enhances visibility into your distributed environment with detailed status reporting. Track every Flows and Nodes to stay informed about project performance. The event monitoring feature alerts you to significant occurrences such as nodes going offline—which isn't always a cause for concern—and flows that have stopped, alongside module errors and warnings that need your attention.

Centralized Overview of both Flows AND Data

Get a centralized overview of the health of your deployed Flows and Nodes with Crosser's Monitoring dashboard. This centralized interface not only displays the current status but also highlights events that may require your attention. Dive deeper with the drill-down capabilities to understand if Flows and Nodes potentially experiencing issues. Cross-reference user activities to pinpoint problems in deployments and utilize error/warning counters for each Flow.

Learn more about Crosser FlowWatch in this article →

Security & Management

Security, which is top of mind among everyone looking to connect machinery to external systems, ie the Internet. The Crosser solution is designed with security in mind from the start. Some examples:

  • All communication with nodes is encrypted
  • Nodes register with signed keys
  • All traffic between nodes and the Crosser Control Center is initiated from the nodes, to avoid having to open firewalls for inbound traffic. All outgoing traffic uses standard HTTP ports to avoid firewall changes.
  • Credentials are managed centrally by storing them in a secure vault. Nodes can then reference these credentials when they need to connect to external systems, such as cloud services, without exposing the actual credentials in any user facing interface.
  • With large distributed computing deployments there will be many persons involved in operating the system. With the Control Center you get role based access control so that you can finetune who can modify flows, who can update flows on each node, who can onboard new nodes and so on.

Feature

Node-RED

Crosser

Comment

User management

No

Yes

Centralized login simplifies user management

External authentication

No

Yes

Use your existing directory servers to give your users access to Crosser Cloud

Access rights

No

Yes

Fine tune who can do what with your edge nodes and flows

Node monitoring

Local per node

Multi-node in cloud

Always have a clear picture of the status of all your distributed nodes

Deployment logs

No

Yes

Keep track of when changes were deployed

Runtime environment

NodeJS

.NET Core

Maximize performance while still getting OS independence

Data Processing

Single process

Multi-flow processing. Each flow is a separate process.

If every flow is a separate process, malfunctions of one flow will not affect the other flows running on the same node.

Fully supported

Finally it’s worth pointing out that the Crosser Solution is a commercial fully supported solution with a team of experts waiting to help you. 

Feature

Node-RED

Crosser

Comment

Support

Community

Crosser

Enterprise support with team of experts


Enterprise ready solution for large scale deployments

In summary, the Crosser Stream Analytics and Integration Solution is a pre-packaged, production-ready solution for industrial IoT and Enterprise Integration applications that provides great flexibility in terms of connectivity and processing options, while still being easy to use with minimal life-cycle costs.

Learn more:

Crosser Stream Analytics Platform Overview →

Crosser Flow Studio Introduction →

Crosser Pricing →

Get Started Today

Try Crosser for Free

Sign up for a free developer account and start building your projects today.

About the author

Goran Appelquist (Ph.D) | CTO

Göran has 20 years experience in leading technology teams. He’s the lead architect of our end-to-end solution and is extremely focused in securing the lowest possible Total Cost of Ownership for our customers.

"Hidden Lifecycle (employee) cost can account for 5-10 times the purchase price of software. Our goal is to offer a solution that automates and removes most of the tasks that is costly over the lifecycle.

My career started in the academic world where I got a PhD in physics by researching large scale data acquisition systems for physics experiments, such as the LHC at CERN. After leaving academia I have been working in several tech startups in different management positions over the last 20 years.

In most of these positions I have stood with one foot in the R&D team and another in the product/business teams. My passion is learning new technologies, use it to develop innovative products and explain the solutions to end users, technical or non-technical."

Close