Golang port of Node Red core

#1

Hello

Is any work in progress for porting Node-RED to golang (or dynamic compiling via LLVM)?

Now I'm playing with a serial port log processing, and totally disappointed with Node.js productivity even for such simple task as the single serial data stream processing. My modern i7 notebook can't display on dashboard even 5messages/in second (serial -> limit 5msg/s -> JSON -> select -> 9 gauges shows current device state).

I asked about Node-RED scalability for monitoring of a small village with not more than 100-200 users. Now I'm sure that Node-RED unable to work on any massive load.

0 Likes

#2

No, the core team are not busy porting to Golang. Node-RED benefits from the rich ecosystem of node.js modules.

There are multiple factors here - one of which will be the performance of the dashboard. You may need a more bespoke dashboard solution, whilst still using NR on the backend.

0 Likes

#3

I am for sure handling much more than 5 messages per second in node-red (without considering the dashboard)

Does this also not work for you?

0 Likes

#4

Even on this primitive scheme, I feel the lags of the core designer web interface (localhost, single user).
I have 115200 baud continues input data flow.
I said about 5 msg/s because on the disabled tab I limited it for debugging purposes, but original serial data goes with rates about few Kb/sec.

0 Likes

#5

Problem solved, triggers eats too many resources and must be replaced for RBE for this task.

0 Likes

#6

are you saying that these trigger nodes are inefficient?
I just tested a flow with a function node, which access context, and it takes about 0.4 ms to run a message through this flow. But no trigger node involved here

0 Likes