OperationalBina / PipeRT

MIT License
11 stars 7 forks source link

Tech review - shared RAM between containers + ZMQ / ImageZMQ #46

Open itamarwilf opened 4 years ago

Elon-Abulafia commented 4 years ago

From a bit of research shared memory between containers is possible we just need to add the ipc configuration for each container and it should work.

Regarding ZMQ I don't see a reason to use it as it serves as a tool for message queues that works on ports (much like sockets do) instead of having a dedicated message broker like redis.

ImageZMQ on the other hand might be useful when there is a need to have multiple cameras stream their video into the pipeline. It allows to send opencv images from one computer to another using PyZMQ messaging, it just needs a central computer to connect to and all of the cameras that connect to that computer can stream images into it. (might be worthwhile)

rotemtzaban commented 4 years ago

I think the reason for using ZMQ, is that it should be faster than using redis (I think almost as fast when using tcp on localhost, or unix domain sockets), since it is a distributed message broker. It also seems to be easier to manage than shared memory, and would also work when shared memory is not available(i.e deploying on multiple servers)