Search code examples
networkingremotingcommunicationpublish-subscribe

Communication Mechanisms that are both Decoupled and Low-Latency


Does anyone have experience with message transports that are both decoupled(senders and receivers don't know/care about each other) and low-latency for distributed and possibly remote interaction events? Do they exist?

I'm researching/developing interaction technologies for tangible interaction devices(i.e physical buttons, knobs, sliders, RFID sensors/actuators) that may control software which may or may not reside on the same system to which the device is connected.

Generally some type of pub/sub approach is the way I want to go because I want each entity to only be concerned with the events it generates and it's own functionality. Not to mention, devices may be connected and disconnected indeterminately.

One popular technology in the field is EventHeap, which is built on IBM's implementation of tuple spaces, TSpaces. You push events into a bag which can then be pulled out. But a typical performance limitation of tuple space implementations are high latencies; latencies which are sometimes jittery or non-deterministic. This is unacceptable for fine grained interaction.

EventHeap Source


Solution

  • There's MQ (for example Apache's ActiveMQ) which may address some points:

    • senders and receivers don't need know about each other
    • pub/sub & peer-to-peer

    Not really sure what the capabilities of the devices are you're talking about, might be too heavyweight, but might be worth a look.


    Update: actually, here's a link to IBM's MQ for 'wireless and mobile applications' which might be helpful to check out too.