[zeromq-dev] Notify send()er that they've hit the high water mark

Michel Pelletier pelletier.michel at gmail.com
Mon Jul 9 22:41:43 CEST 2012


Have you looked at the suicidal snail pattern?

http://zguide.zeromq.org/page:all#Slow-Subscriber-Detection-Suicidal-Snail-Pattern

-Michel

On Mon, Jul 9, 2012 at 1:24 PM, Edwin Amsler
<edwinamsler at thinkboxsoftware.com> wrote:
> So here I am, publishing messages through ZeroMQ's send() function at about
> 300MB/s, and my network's set to only send at 10MB/s.
>
> This is kind of a big problem because, while I don't care if the clients
> loose data on their end, the server is either using its memory until it
> crashes, or I'm setting its high water mark and loosing about 29 of every
> thirty messages I produce because I don't know that ZeroMQ can't keep up.
>
> Ideally, when a HWM condition happened, send() would return false, then I'd
> test EAGAIN so I could decide for myself whether I should drop the message,
> or retry later. With that kind of functionality, I could throttle back my
> producer algorithm so that I exactly meet the demand of ZeroMQ instead of
> overwhelming/starving it out.
>
> I'm willing to do the work if this sort of addition makes sense to the rest
> of the project. I'd rather contribute here instead of forking it off in some
> forgotten repository.
>
> Can/should this be done? Is there someone out there willing to mentor me?
>
> Thanks,
>
> Edwin
>
> _______________________________________________
> zeromq-dev mailing list
> zeromq-dev at lists.zeromq.org
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>



More information about the zeromq-dev mailing list