Hi all, I've been away from the list for a few days, so apologies if this has been suggested. I was thinking about the router/xrep issue, and the fact that we know people want and have valid use cases for service routing. However, XREP is not ideal for that at the moment as it effectively promotes routing to nodes rather than services. It also occurred that we have half the problem solved in the XPUB/XSUB branch.
What I considered was something similar to the subscription matching and forwarding. For example, a worker creates a socket and sets a new sockopt: socket->setSockOpt(ZMQ_PROVIDE, "createOrder"); socket->setSockOpt(ZMQ_PROVIDE, "deleteOrder"); When connected to a ROUTER type socket, these PROVIDEs are sent across. When a message is received by the ROUTER, it sends it to any connected socket which PROVIDEs the service, using the same prefix matching as subscriptions, but it only sends to a single connection at a time (round robin between them as normal). If the ROUTER is connected to another ROUTER, it sends upstream all the PROVIDEs it is aware of, and hence propagates the availability in the same way as the subscription upstreaming on XSUB. This seems to give us the routing flexibility, but still saying scalable and 0MQ-y. Ian
_______________________________________________ zeromq-dev mailing list [email protected] http://lists.zeromq.org/mailman/listinfo/zeromq-dev
