[zeromq-dev] ROUTER and Credit-Based Flow Control

Charles Remes lists at chuckremes.com
Thu Aug 21 22:23:49 CEST 2014


If you are using credit-based flow control then you shouldn’t care about the HWM settings. Set them to infinite.

cr

On Aug 21, 2014, at 1:17 PM, Gabriel Sanchez <gave2000 at gmail.com> wrote:

> Hi,
> 
> I am trying to implement credit-based flow control from Chapter 7 of the guide using ROUTER-DEALER. However, I am dropping messages on the ROUTER side when reaching the SNDHWM. If I set the maximum amount of credits to a fraction of the SNDHWM I don't drop any messages. I checked the code in pipe.cpp and saw that the reader side of the pipe only notifies the writer when it has read a multiple of the LWM.
> 
> Does this mean that if the number of messages written by the ROUTER to a peer pipe approaches the SNDHWM and in the meantime I get more credits before the reader reaches the LWM I may drop messages? If so, are there any workarounds? I was thinking of setting the maximum credit value to SNDHWM - LWM to ensure that the number of messages written doesn't go above the SNDHWM.
> 
> I am using libzmq 3.2.3 and I noticed that in newer versions there's a patch for notifying the application when sending a message to a ROUTER fails.
> 
> Thanks in advance
> 
> Gabriel
> _______________________________________________
> 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