[zeromq-dev] Blocking on multiple outputs
sustrik at 250bpm.com
Wed Jun 1 23:32:51 CEST 2011
On 06/01/2011 10:40 PM, Pieter Hintjens wrote:
> Right. The problem in our use case is that the server will send
> messages much faster than the network can handle them, and certainly
> faster than most clients, so full queues will be a normal situation.
I am not sure what the actual use case is, but what I infer is that the
clients are not able to receive replies as fast as they produce requests
(for example because the replies are huge while the requests are small).
Consequently, replies are being dropped not to run out of memory which
lowers the reliability of the system as a whole.
If that's the case, we could try to introduce "retroflex pushback" ie.
we can stop reading requests from a connection that has the reply queue
full. That way the client will be forced to read the replies before
sending more requests.
More information about the zeromq-dev