dmitriy.samovskiy at cohesiveft.com
Wed Oct 31 18:45:24 GMT 2007
My scenario might be common and I am hoping someone might be working on a similar issue.
I set up a cluster of 2 nodes - rabbit at node1 and rabbit at node2. Several producers will
connect to either node and send a series of messages with topic hierarchy as routing key
(for example, "a.b.c.d.e.f"). Consumers will also connect to either node and will register
to receive some subset of what is being sent - in other words, for example, some of them
will request "a.#" while others might want to get only "#.e.f". My goal is to make it
happen if at least one of the nodes in the cluster is up and running. Both producers and
consumers will know about existence of both cluster nodes, but they need to be able to
randomly connect to either.
Any thoughts on how this setup can be accomplished? These requirements are somewhat
flexible as long as I achieve a design with no single points of failure.
One scenario that I can think of is that I can force all clients (both producers and
consumers) to connect to the same node. They will re-connect to another node only if the
first node went down. This will achieve active-passive redundancy but is not as flexible...
More information about the rabbitmq-discuss