Scalability Node-Red

Actually, it is 123 (but I seem to remember the node-red implimentation is fixed at 100 for some reason) ref

This limit is hidden by driver implementation. What is happening under the hood is - multiple requests/polls are occurring. Even on your SCADA. PS, 2000 data per second is (probably) easily achievable in node-red too.

If you are unaware of this, you can (AND WILL) eventually hit issues with inconsistent data (i.e. the 1st item of 10000 would probably have been read 100 polls before the last item - and could have changed in the mean time). you should ALWAYS group items relative to one another into single poll blocks.

This is why when i do data collection, I do it with the aid of the PLC as it "knows when" it is time for collection (e.g end of a cycle - or -after 10 cycles - or - after 1hr running - whatever the desired criteria is), move the LIVE values into a "collection" staged area & set a "trigger" for the application to recognise it is time to capture and store the SANE/consistent values.

Also, I will typically buffer values in the PLC with an index, datatype and timestamp (via a subroutine).
This has several benefits...

  • Any loss of connectivity does not necessarily mean loss of production data
  • Any lag or fluctuation between PLC ~ network ~ Database becomes irrelevant (since the timestamps are all relative to each other - you can depend on the between 2 entries as being gospel - unless clock was changed)
  • creates a stream of data minimising the need for thousands of areas to be polled
  • creates a simple framework for users to add more data (simply push your data with a datatype onto the stack & it will be collected & put into the database - without a single modification to database/scada etc)

Virtual Machine on HyperV. Not a terribly powerful setup but probably more perform-ant than a RPi (though you never know till you try)

The problem isnt really with node-red. The problem is understanding what is going on under the hood and making your solution do the right thing.


Why dont you just give it a go & see where you get to.

Remember - unlike a SCADA - this doesnt cost you anything but time.

1 Like