We are building a solution as described below:

  1. Arduino-based sensors read data and send it to Raspberry every second.
  2. Raspberry Pi processes these data and then communicates with a backend system using an exposed Web Service every minute.
  3. the solution is in an industrial environment.

My Questions:

  1. Do I need middleware for this job?
  2. If the answer is yes, can I use a Raspberry for this or better use a server/VM for this purpose?
  3. Any middleware recommended?
  • 3
    Hi Yvan, I'm not sure we've got really enough data here. How many sensors are you talking about, what amount of sensor data do they send. Where are envisioning a middle ware right now?
    – Helmar
    Commented Aug 25, 2018 at 12:39
  • 1
    Hello @Helmar , each pi should handle 20-30 Arduino sensors. As mentioned, a quantity should be sent every second from each sensor to the pi, the pi will collect and process the data using WSDL to an external system.
    – Yvan
    Commented Aug 25, 2018 at 13:38
  • 1
    Your question is in my opinion too generic. Industrial environment does not add any information or suggest any architecture to be used. Also note that the concept of middleware is too generic. Commented Nov 19, 2018 at 13:54

2 Answers 2


Please consider using Apache NiFi as middleware for sensors/IoT data acquisition because it is powerful and reliable. Using Raspberry Pi as middle-ware in industrial environment would not be the best solution in my opinion.

  • 1
    Thank you so much, regarding the Minifi recommended devices for IIoT, any recommendations?
    – Yvan
    Commented Aug 26, 2018 at 19:07
  • If you can share a bit more about yours needs I'm willing to share my ideas back.
    – Amit Vujic
    Commented Aug 27, 2018 at 18:46

The concept of middleware is a little ambiguous. You mean a middleware between your backend and raspberry/ies?

A middleware is useful when you have different devices and protocols communicating to your backend. Its job is to handle communication in a easier way without having you to worry about which device is using which protocol. However it adds complexity to your system (communication errors handling, deployment, scalability and so on).

In your case if you have one raspberry or many of them (since raspberry is communicating the data to the backend, Arduinos here should not even considered) communicating the same kind of data and you think your system will not change much then no, I think you will not need it.

If you think in the future your system will have to interface with many protocols (http, MQTT and other protocols) and in different ways then yes a middleware might be needed.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.