Claims
- 1. A method comprising:
generating a message from a source application on a first computer system; translating the message from an original format to a portable format on the first computer system, thereby generating a portable message, wherein the portable message comprises metadata which comprise identifying characteristics of the source application; sending the portable message from the first computer system to a second computer system using peer-to-peer message passing between the first computer system, the second computer system, and optionally one or more intermediary computer systems; receiving the portable message at the second computer system; and routing the portable message to a target application on the second computer system based on the metadata.
- 2. The method of claim 1, further comprising:
determining an application type of the target application based on the metadata of the portable message; determining whether an existing instance of the application type of the target application is running on the second computer system; wherein the routing the portable message to the target application comprises routing the portable message to the existing instance if the existing instance of the application type of the target application is running on the second computer system; and wherein the routing the portable message to the target application comprises routing the portable message to a new instance of the target application if the existing instance of the application type of the target application is not running on the second computer system.
- 3. The method of claim 1, further comprising:
delivering a payload of the message to the target application.
- 4. The method of claim 1, further comprising:
translating the portable message from the portable format to the original format on the second computer system.
- 5. The method of claim 1,
wherein the source application is network-unaware.
- 6. The method of claim 1, further comprising:
invoking functionality of the second computer system in response to the message.
- 7. The method of claim 6,
wherein the invoking functionality on the second computer system comprises instructing the target application to take one or more actions.
- 8. The method of claim 1,
wherein the portable message is sent from the first computer system to the second computer system and one or more additional computer systems using multicast peer-to-peer messaging.
- 9. The method of claim 1,
wherein the portable message is sent from the first computer system to the second computer system and one or more additional computer systems using broadcast peer-to-peer messaging.
- 10. The method of claim 1,
wherein the portable metadata comprises a quantity of allowable network hops before the message is considered undeliverable.
- 11. The method of claim 1,
wherein the portable format comprises XML, and wherein the portable messages comprise XML messages.
- 12. A carrier medium comprising program instructions, wherein the program instructions are computer-executable to implement:
generating a message from a source application on a first computer system; translating the message from an original format to a portable format on the first computer system, thereby generating a portable message, wherein the portable message comprises metadata which comprise identifying characteristics of the source application; sending the portable message from the first computer system to a second computer system using peer-to-peer message passing between the first computer system, the second computer system, and optionally one or more intermediary computer systems; receiving the portable message at the second computer system; and routing the portable message to a target application on the second computer system based on the metadata.
- 13. The carrier medium of claim 12, wherein the program instructions are further computer-executable to implement:
determining an application type of the target application based on the metadata of the portable message; determining whether an existing instance of the application type of the target application is running on the second computer system; wherein the routing the portable message to the target application comprises routing the portable message to the existing instance if the existing instance of the application type of the target application is running on the second computer system; and wherein the routing the portable message to the target application comprises routing the portable message to a new instance of the target application if the existing instance of the application type of the target application is not running on the second computer system.
- 14. The carrier medium of claim 12, wherein the program instructions are further computer-executable to implement:
delivering a payload of the message to the target application.
- 15. The carrier medium of claim 12, wherein the program instructions are further computer-executable to implement:
translating the portable message from the portable format to the original format on the second computer system.
- 16. The carrier medium of claim 12,
wherein the source application is network-unaware.
- 17. The carrier medium of claim 12, wherein the program instructions are further computer-executable to implement:
invoking functionality of the second computer system in response to the message.
- 18. The carrier medium of claim 17,
wherein the invoking functionality on the second computer system comprises instructing the target application to take one or more actions.
- 19. The carrier medium of claim 12,
wherein the portable message is sent from the first computer system to the second computer system and one or more additional computer systems using multicast peer-to-peer messaging.
- 20. The carrier medium of claim 12,
wherein the portable message is sent from the first computer system to the second computer system and one or more additional computer systems using broadcast peer-to-peer messaging.
- 21. The carrier medium of claim 12,
wherein the portable metadata comprises a quantity of allowable network hops before the message is considered undeliverable.
- 22. The carrier medium of claim 12,
wherein the portable format comprises XML, and wherein the portable messages comprise XML messages.
- 23. A system comprising:
a first computer system comprising a first CPU and a first memory; a second computer system comprising a second CPU and a second memory; wherein the first computer system and the second computer system are communicatively coupled via a network; wherein the first memory stores program instructions which are executable by the first CPU to:
generate a message from a source application on the first computer system; translate the message from an original format to a portable format on the first computer system, thereby generating a portable message, wherein the portable message comprises metadata which comprise identifying characteristics of the source application; send the portable message from the first computer system to the second computer system using peer-to-peer message passing between the first computer system, the second computer system, and optionally one or more intermediary computer systems; wherein the second memory stores program instructions which are executable by the second CPU to:
receive the portable message at the second computer system; and route the portable message to a target application on the second computer system based on the metadata.
- 24. The system of claim 23, wherein the program instructions are further executable by the second CPU to:
determine an application type of the target application based on the metadata of the portable message; determine whether an existing instance of the application type of the target application is running on the second computer system; wherein the routing the portable message to the target application comprises routing the portable message to the existing instance if the existing instance of the application type of the target application is running on the second computer system; and wherein the routing the portable message to the target application comprises routing the portable message to a new instance of the target application if the existing instance of the application type of the target application is not running on the second computer system.
- 25. The system of claim 23, wherein the program instructions are further executable by the second CPU to:
delivering a payload of the message to the target application.
- 26. The system of claim 23, wherein the program instructions are further executable by the second CPU to:
translating the portable message from the portable format to the original format on the second computer system.
- 27. The system of claim 23,
wherein the source application is network-unaware.
- 28. The system of claim 23, wherein the program instructions are further executable by the second CPU to:
invokw functionality of the second computer system in response to the message.
- 29. The system of claim 28,
wherein the invoking functionality on the second computer system comprises instructing the target application to take one or more actions.
- 30. The system of claim 23,
wherein the portable message is sent from the first computer system to the second computer system and one or more additional computer systems using multicast peer-to-peer messaging.
- 31. The system of claim 23,
wherein the portable message is sent from the first computer system to the second computer system and one or more additional computer systems using broadcast peer-to-peer messaging.
- 32. The system of claim 23,
wherein the portable metadata comprises a quantity of allowable network hops before the message is considered undeliverable.
- 33. The system of claim 23,
wherein the portable format comprises XML, and wherein the portable messages comprise XML messages.
PRIORITY CLAIM
[0001] This application claims benefit of priority of provisional application Serial No. 60/411,066 titled “Distributed Computing Infrastructure” filed on Sep. 16, 2002, whose inventors are Amir Husain, Todd Enright, and Barry Thornton.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60411066 |
Sep 2002 |
US |