[zeromq-dev] Seeking to understand muting with PUB/SUB and slow consumer

Jamie Stewart jamie at otcmarkets.com
Fri Feb 1 14:42:09 CET 2019


We use ZeroMQ 4.1.1 with EPGM in our Java applications, using pub/sub sockets. Under performance tests at very heavy load, we intermittently see a slow consumer problem with one application. When receiving a burst of traffic from a fast sender, the receiver sometimes abruptly stops receiving messages. When that happens, the receiving app no longer sees any new messages from that sender until the app is restarted.

I presume that the sender is being muted when the receiver’s unprocessed messages hit a high-water mark. I’d like to understand how to monitor for this event, and how the receiving app can recover, if the receiver’s slowness was only temporary. Is there a better approach than using heartbeats, and closing and re-opening the listening (SUB) socket if the heartbeats from the PUB stop arriving?

I am not looking for you to fix our code. Under normal circumstances, the code works fine. I understand that in a slow-consumer situation, something has to give, and there are a few ways that the system could fail. Muting the sender seems like a reasonable failure mode. I’m looking for education, so that I can better understand the way that the library handles muting in this situation.

If anyone has time to explain it in this group, or can point to a good explanation elsewhere, that would be lovely and I’d be in your debt. If you’d prefer to contact me directly to set up a brief consulting arrangement where we could talk this through on the phone (or in person if you’re in NYC), please email me at jamie (at) otcmarkets (dot) com.


  Jamie Stewart


This e-mail (including any attachments) is confidential and may contain sensitive or legally privileged information. It is for the intended recipient only. Do not, directly or indirectly, copy, reproduce, print or disclose any part of this e-mail without the prior written consent of OTC Markets Group Inc. If you receive this message in error, please delete it and any attachments, and notify OTC Markets Group of misdelivery by return e-mail.
 This email has been scanned for email related threats and delivered safely by Mimecast.
 For more information please visit http://www.mimecast.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20190201/b3edfabf/attachment.htm>

More information about the zeromq-dev mailing list