Claims
- 1. A method of dynamically routing electronic messages between software application programs, the method comprising:
receiving an electronic message from a first software application program, the electronic message including a first routing node name and a first queue name associated with a first queue for receiving the electronic message; receiving an informational message from at least one of a plurality of remotely-located software processes, the informational message containing network connection information associated with a second routing node name and a second queue name associated with a second queue, the contents of the second queue being accessible by a second software application program; and routing at least part of the electronic message from the first queue to the second queue using the network connection information contained in the informational message.
- 2. The method of claim 1 wherein the network connection information includes at least one network address associated with the second queue.
- 3. The method of claim 1 wherein the network connection information identifies a routing path used in routing at least part of the electronic message from the first queue to the second queue.
- 4. The method of claim 1 wherein the remotely-located software process providing the informational message corresponds to a previously-encountered routing node.
- 5. The method of claim 1 wherein the network connection information includes a default routing connection and an alternate routing connection.
- 6. The method of claim 1 wherein the first and second queues reside on different digital data processing devices with different operating systems.
- 7. The method of claim 1 wherein the first and second queues reside on different digital data processing devices with substantially identical operating systems.
- 8. The method of claim 1 wherein the first and second queues reside on different digital data processing devices in a common processor cluster.
- 9. The method of claim 1 wherein the first queue resides on a digital data processing device associated with a first processor cluster and the second queue resides on a different digital data processing device associated with a second processor cluster.
- 10. The method of claim 1 wherein the informational message is periodically transmitted by at least one of the plurality of remotely-located software processes.
- 11. The method of claim 1 wherein the informational message is transmitted by at least one of the plurality of remotely-located software processes in response to an event.
- 12. The method of claim 11 wherein the event corresponds to at least one of an addition, deletion, and modification of a routing node associated with the second routing node name.
- 13. The method of claim 1 wherein the informational message contains network connection information for routing nodes previously encountered by at least one of the plurality of remotely-located software processes.
- 14. The method of claim 1 further comprising:
transmitting a request message for network connection information associated with the second queue to the plurality of remotely-located software processes.
- 15. The method of claim 14 wherein the plurality of remotely-located software processes correspond to processes previously engaged in a messaging session with a routing node associated with the first routing node name.
- 16. A system for dynamically routing electronic messages between software application programs, the system comprising:
a first queue receiving an electronic message from a first software application program, the electronic message identifying a first routing node name and a first queue name associated with the first queue; a listener thread associated with the first routing node name and receiving an informational message from at least one of a plurality of remotely-located software processes, the informational message containing network connection information associated with a second routing node name and a second queue name associated with a second queue, the contents of the second queue being accessible by a second software application program; and a dispatcher thread accessing at least part of the network connection information contained in the informational message to direct the formation of a network connection to the second queue, wherein at least part of the electronic message from the first queue is routed to the second queue via the network connection.
- 17. The system of claim 16 wherein the network connection information includes at least one network address associated with the second queue.
- 18. The system of claim 16 wherein the network connection information identifies a routing path used in routing at least part of the electronic message from the first queue to the second queue.
- 19. The system of claim 16 wherein the remotely-located software process providing the informational message corresponds to a previously-encountered routing node.
- 20. The system of claim 16 wherein the network connection information includes a default routing connection and an alternate routing connection.
- 21. The system of claim 16 wherein the first and second queues reside on different digital data processing devices with different operating systems.
- 22. The system of claim 16 wherein the first and second queues reside on different digital data processing devices with substantially identical operating systems.
- 23. The system of claim 16 wherein the first and second queues reside on different digital data processing devices in a common processor cluster.
- 24. The system of claim 16 wherein the first queue resides on a digital data processing device associated with a first processor cluster and the second queue resides on a different digital data processing device associated with a second processor cluster.
- 25. The system of claim 16 wherein the informational message is periodically transmitted by at least one of the plurality of remotely-located software processes.
- 26. The system of claim 16 wherein the informational message is transmitted by at least one of the plurality of remotely-located software processes in response to an event.
- 27. The system of claim 26 wherein the event corresponds to at least one of an addition, deletion, and modification of a routing node associated with the second routing node name.
- 28. The system of claim 16 wherein the informational message contains network connection information for routing nodes previously encountered by at least one of the plurality of remotely-located software processes.
- 29. The system of claim 16 wherein the plurality of remotely-located software processes correspond to processes previously engaged in a messaging session with a routing node associated with the first routing node name.
- 30. The system of claim 16 further comprising a route table for storing at least some of the contents of the informational message, the contents of the route table being initially determined by an initialization file and being updated in response to a plurality of informational messages received in response to at least one of a time period expiration and an event.
RELATED APPLICATIONS
[0001] This claims priority to and the benefit of U.S. Provisional Patent Application No. 60/336,044, filed Nov. 30, 2001, the entirety of which is incorporated herein by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60336044 |
Nov 2001 |
US |