On 20 aug, 17:11, Pieter Hintjens <[email protected]> wrote: > On Sat, Aug 20, 2011 at 8:29 AM, Mathijs Kwik <[email protected]> wrote: > > So I would rather keep the system simple. I don't mind adding extra > > sockets so parts can signal each other about adds/removals, but as far > > as I can tell, zeromq doesn't provide means to do this (disconnect / > > remove 1 peer from load-balancer). > > This is actually the basis for the REQ/REP reliability as well. Look > at the LRU queue pattern to start with. Now, you can use a > ROUTER-to-DEALER model, with several alternative ways to know when a > worker is present or absent: > > - heartbeating > - credit based flow control (seehttp://unprotocols.org/blog:15) > - synchronous stepping (LRU) > > You could also have explicit "bye bye" messages from workers to the > ventillator but that fails to handle the case where a worker actually > crashes. > > -Pieter
I fail to see how to implement these explicit "bye bye" messages. I can get a worker to send such a message to the ventilator, I just don't have a clue on what the ventilator should do when it receives a byebye. The case where a worker actually crashes doesn't need to get handled by the system itself. A worker (or any other component) crashing should result in the entire system going down (not trying to repair itself). After a special cleanup/consistency check routine, everything can be restarted. Thanks, Mathijs > _______________________________________________ > zeromq-dev mailing list > [email protected]http://lists.zeromq.org/mailman/listinfo/zeromq-dev _______________________________________________ zeromq-dev mailing list [email protected] http://lists.zeromq.org/mailman/listinfo/zeromq-dev
