Well, let me explain what I'm trying to do. Perhaps someone can show me a better way.
I have a client using a dealer socket. Talking to a mixed server environment, a couple of 6 core machines and a 12 core machine. Each of the servers uses a simple queue device to fan out the jobs to the workers over ipc: So, basically this pattern, but the client connects to many machines w/ different numbers of cores. client(DEALER)->Queue(ROUTER,DEALER)->worker(REP) Because the dealer socket on the client fair queue's the messages to all the queue devices equally, so the 12 core machine quickly becomes idle after working off its queue while the 6 core machines continue work off their queues. My thought was that I could set the HWM to 1 on the ROUTER socket which would prevent the messages from being read aggressively, but since ROUTER will drop on HWM, I can't do that. Can anyone suggest a better pattern? -Whit On Wed, Dec 14, 2011 at 3:35 AM, Martin Sustrik <[email protected]> wrote: > On 12/14/2011 11:49 AM, Whit Armstrong wrote: >> >> Is it possible to construct a ZMQ_ROUTER socket that does not drop on HWM? > > > Technically it is possible. It can block instead of dropping. The question > is whether single peer being dead/slow should really block sending messages > to all the other peers. > > Martin > _______________________________________________ zeromq-dev mailing list [email protected] http://lists.zeromq.org/mailman/listinfo/zeromq-dev
