- Does ZeroMQ guarantee the order of messages( FIFO ).
- Is there an option for persistence.
- Is it the best fit for IPC communications.
- Does it allow prioritizing the messages.
- Does it allow prioritizing the receivers.
- Does it allow both synchronous as well asynchronous way of communication?
Zeromq is best understood as a udp like messaging system. Thus is does not intrinsically guarantee any of that. It DOES guarantee that parts of a single message are received atomically and in order, since ZMQ allows for sending a message consisting of several parts. All communication is always asynchronous by design.
see http://zguide.zeromq.org/ for more advanced patterns.
that being said, all the features requested would by definition make the transmission slower and more complicated. If they are needed you should implement or use one of the available patterns of the guide.
https://lists.zeromq.org/pipermail/zeromq-dev/2015-January/027748.html
The author said:"Messages carried over TCP or IPC will be delivered in order if they pass through the same network paths. This is guaranteed and it's a TCP guarantee, nothing to do with ZeroMQ. ZeroMQ does not reorder messages, ever. However if you pass messages through two or more paths, and then merge those flows again, you will in effect shuffle the messages."
© 2022 - 2024 — McMap. All rights reserved.