Providing distributed dynamic routing using a logical broker
First Claim
1. A method comprising:
- receiving, by an upstream broker of a plurality of brokers from a first downstream broker of the plurality of brokers over a first communications link, first message-identifying information of a message consumer, wherein the first downstream broker is closer than the upstream broker to a point where the message consumer is connected to the plurality of brokers;
configuring, using a processing unit and in response to receiving the first message-identifying information over the first communications link, routing information stored by the upstream broker to route received messages corresponding to the first message-identifying information to the first downstream broker over the first communication link;
receiving a message from a message producer;
determining that the message is identified by the first message-identifying information;
routing, in response to determining that the message is identified by the first message-identifying information, the message to the first downstream broker according to the stored routing information;
receiving, by the upstream broker from a second downstream broker of the plurality of brokers over a second communications link, second message-identifying information of the message consumer, wherein the second communications link differs from the first communications link, and wherein the second message-identifying information differs from the first message-identifying information; and
reconfiguring, using the processing unit and in response to receiving the second message-identifying information over the second communications link, the routing information stored by the upstream broker to route received messages corresponding to the second message-identifying information to the second downstream broker over the second communications link.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods are disclosed that provide a single logical broker from the point of view of a message consumer connected to a messaging network. The messaging network implements dynamic routing that adapts to changes in the message preferences of the message consumer and the message consumer'"'"'s availability throughout the messaging network. In various embodiments, the connection/disconnection of a message consumer and/or changes to message routing criteria at any broker in the network are propagated to all other brokers in the network until the entire network is adapted, such that a message consumer may connect to any broker node and receive the same network service and functionality regardless of connection point.
-
Citations
12 Claims
-
1. A method comprising:
-
receiving, by an upstream broker of a plurality of brokers from a first downstream broker of the plurality of brokers over a first communications link, first message-identifying information of a message consumer, wherein the first downstream broker is closer than the upstream broker to a point where the message consumer is connected to the plurality of brokers; configuring, using a processing unit and in response to receiving the first message-identifying information over the first communications link, routing information stored by the upstream broker to route received messages corresponding to the first message-identifying information to the first downstream broker over the first communication link; receiving a message from a message producer; determining that the message is identified by the first message-identifying information; routing, in response to determining that the message is identified by the first message-identifying information, the message to the first downstream broker according to the stored routing information; receiving, by the upstream broker from a second downstream broker of the plurality of brokers over a second communications link, second message-identifying information of the message consumer, wherein the second communications link differs from the first communications link, and wherein the second message-identifying information differs from the first message-identifying information; and reconfiguring, using the processing unit and in response to receiving the second message-identifying information over the second communications link, the routing information stored by the upstream broker to route received messages corresponding to the second message-identifying information to the second downstream broker over the second communications link. - View Dependent Claims (2, 3, 4)
-
-
5. A system comprising:
-
a memory to store routing information; and a processing unit operatively coupled to the memory, the processing unit to; receive, by an upstream broker of a plurality of brokers from a first downstream broker of the plurality of brokers over a first communications link, first message-identifying information of a message consumer, wherein the first downstream broker is closer than the upstream broker to a point where the message consumer is connected to the plurality of brokers; configure, in response to receiving the first message-identifying information over the first communications link, the routing information to route received messages corresponding to the first message-identifying information to the downstream broker over the first communication link; receive a message from a message producer; determine that the message is identified by the first message-identifying information; route, in response to determining that the message is identified by the first message-identifying information, the message to the first downstream broker according to the routing information; receive, by the upstream broker from a second downstream broker of the plurality of brokers over a second communications link, second message-identifying information of the message consumer, wherein the second communications link differs from the first communications link, and wherein the second message-identifying information differs from the first message-identifying information; and reconfigure, in response to receiving the second message-identifying information over the second communications link, the routing information stored by the upstream broker to route received messages corresponding to the second message-identifying information to the second downstream broker over the second communications link. - View Dependent Claims (6, 7, 8)
-
-
9. A non-transitory computer-readable medium having instructions encoded thereon that, when executed by a processing unit, cause the processing unit to:
-
receive, by an upstream broker of a plurality of brokers from a first downstream broker of the plurality of brokers over a first communications link, first message-identifying information of a message consumer, wherein the downstream broker is closer than the upstream broker to a point where the message consumer is connected to the plurality of brokers; configure, using the processing unit in response to receiving the first message-identifying information over the first communications link, routing information stored by the upstream broker to route received messages corresponding to the first message-identifying information to the first downstream broker over the first communications link; receive a message from a message producer; determine that the message is identified by the first message-identifying information; route, in response to determining that the message is identified by the first message-identifying information, the message to the downstream broker according to the stored routing information; receive, by the upstream broker from a second downstream broker of the plurality of brokers over a second communications link, second message-identifying information of the message consumer, wherein the second communications link differs from the first communications link, and wherein the second message-identifying information differs from the first message-identifying information; and reconfigure, using the processing unit and in response to receiving the second message-identifying information over the second communications link, the routing information stored by the upstream broker to route received messages corresponding to the second message-identifying information to the second downstream broker over the second communications link. - View Dependent Claims (10, 11, 12)
-
Specification