SCATTER and GATHER socket types (RFC 49).
Single-frame PUSH/PULL equivalent. SCATTER round-robins, GATHER fair-queues.
require "omq"
require "omq/scatter_gather"
gather = OMQ::GATHER.bind("tcp://127.0.0.1:5555")
scatter = OMQ::SCATTER.connect("tcp://127.0.0.1:5555")
scatter << "work item"
msg = gather.receive # => "work item"