System for communicating messages among agent processes
First Claim
1. A method for processing data processing application requests in a computer system configured as a plurality of nodes, a node having memory for storing data and a plurality of interacting processes, comprising the steps of:
- establishing a portion of computer memory on the nodes as agent message queues ("AMQ'"'"'s");
receiving an application request by a first process, wherein the application request includes a request that is not specific to the computer system node configuration, the first process acting as a coordinating agent;
requesting the processing of data, including data on a plurality of nodes, ("request data") by an application request originating on a first node, the request data being located on a second node;
generating a first internal request by the coordinating agent processing a low level request compiled from the application request, and adding an access authorization to the low level request, by the coordinating agent, for authorizing access to the request data and an access location for identifying the request data location, so that the internal request is specific to the computer system configuration;
communicating, by the coordinating agent, the internal request to a first fast communication manager process ("FCM") and thence to a second FCM, the second FCM being on the second node, and storing, by the second FCM, the internal request in the selected AMQ, the selected AMQ being on the second node;
retrieving the internal request from the selected AMQ by a second process, the second process acting as a subordinate agent;
generating, by the coordinating agent, a second internal request for the application request, for processing by a second subordinate agent, the second subordinate agent being on a third node;
communicating, by the first FCM, the second internal request to a third FCM, the third FCM being on the third node;
storing, by the third FCM, the second internal request in a second AMQ, the second AMQ being on the third node;
wherein a plurality of internal requests are stored in a plurality of AMQ'"'"'s, the step of storing an internal request in an AMQ further comprising the steps of;
identifying the internal request with a universal unique identifier ("UUID");
storing the UUID in the AMQ;
designating the AMQ as a busy AMQ;
designating AMQ'"'"'s not having internal requests as free AMQ'"'"'s;
testing busy AMQ'"'"'s on a node, by an FCM having an internal request for storage in an AMQ, to determine if an AMQ has the UUID of the internal request;
selecting a busy AMQ for storing the internal request if the AMQ has the UUID of the internal request; and
selecting a free AMQ for storing the internal request if none of the AMQ'"'"'s tested have the UUID.
1 Assignment
0 Petitions
Accused Products
Abstract
Data processing application requests are processed in a computer system configured as a plurality of nodes with a plurality of interacting processes. Data is requested by an application request originating on a first node. The request data includes data located on a plurality of the nodes. A portion of computer memory on the nodes is established as agent message queues ("AMQ'"'"'s"). A first process, acting as a coordinating agent, receives an application request on the first node. The coordinating agent generates a plurality of internal requests for the application request. The coordinating agent communicates the internal requests to a fast communication manager process ("FCM") on the first node. The first FCM, sends the internal requests to FCM'"'"'s on the nodes having the request data ("request data nodes"), for storage in selected AMQ'"'"'s on the request data nodes. The internal requests are retrieved from the selected AMQ'"'"'s by processes acting as subordinate agents on the request data nodes. The subordinate agents may currently process the internal requests.
-
Citations
5 Claims
-
1. A method for processing data processing application requests in a computer system configured as a plurality of nodes, a node having memory for storing data and a plurality of interacting processes, comprising the steps of:
-
establishing a portion of computer memory on the nodes as agent message queues ("AMQ'"'"'s"); receiving an application request by a first process, wherein the application request includes a request that is not specific to the computer system node configuration, the first process acting as a coordinating agent; requesting the processing of data, including data on a plurality of nodes, ("request data") by an application request originating on a first node, the request data being located on a second node; generating a first internal request by the coordinating agent processing a low level request compiled from the application request, and adding an access authorization to the low level request, by the coordinating agent, for authorizing access to the request data and an access location for identifying the request data location, so that the internal request is specific to the computer system configuration; communicating, by the coordinating agent, the internal request to a first fast communication manager process ("FCM") and thence to a second FCM, the second FCM being on the second node, and storing, by the second FCM, the internal request in the selected AMQ, the selected AMQ being on the second node; retrieving the internal request from the selected AMQ by a second process, the second process acting as a subordinate agent; generating, by the coordinating agent, a second internal request for the application request, for processing by a second subordinate agent, the second subordinate agent being on a third node; communicating, by the first FCM, the second internal request to a third FCM, the third FCM being on the third node; storing, by the third FCM, the second internal request in a second AMQ, the second AMQ being on the third node; wherein a plurality of internal requests are stored in a plurality of AMQ'"'"'s, the step of storing an internal request in an AMQ further comprising the steps of; identifying the internal request with a universal unique identifier ("UUID"); storing the UUID in the AMQ; designating the AMQ as a busy AMQ; designating AMQ'"'"'s not having internal requests as free AMQ'"'"'s; testing busy AMQ'"'"'s on a node, by an FCM having an internal request for storage in an AMQ, to determine if an AMQ has the UUID of the internal request; selecting a busy AMQ for storing the internal request if the AMQ has the UUID of the internal request; and selecting a free AMQ for storing the internal request if none of the AMQ'"'"'s tested have the UUID. - View Dependent Claims (2)
-
-
3. A system for processing data processing application requests configured as a plurality of nodes, a node having memory for storing data and a plurality of interacting processes, comprising:
-
a portion of computer memory on the nodes configured as agent message queues; a coordinating manager for receiving a first one of a plurality of application requests including a format that is not specific to node configuration, and for generating a first one of a plurality of internal requests derived from the application request; means for identifying each of the internal requests with a universal unique identifier; means for queuing the first internal request for storage in one of a plurality of selected agent message queues; means for designating the agent message queues as busy agent message queues; a subordinate agent for retrieving the first internal request from the selected agent message queue; a first fast communication manager for sending the first internal request for storage in the agent message queue; means for processing of requested data, including data located on a plurality of nodes, to fulfill the application request which originates on a first node, the requested data being located on a second node; an authorization facility for authorizing access to the requested data; means for providing an access location for identifying the requested data location, so that the first internal request is specific to the computer system configuration; a second fast communication manager on the second node for storing the internal request in the agent message queue being on the second node; and a third fast communication manager for sending the second internal request to a second agent message queue, the third fast communication manager being on the third node, wherein the coordinating manager generates a second internal request for the application request for processing by a second subordinate agent process, the second subordinate agent process being on a third node and wherein the first fast communication manager communicates the second internal request to a third fast communication manager. - View Dependent Claims (4, 5)
-
Specification