Processing messages in a data messaging system using constructed resource models
First Claim
1. A computer-implemented method of processing messages in a data messaging system comprising a plurality of processing nodes, wherein each message processed by the data messaging system has associated with it a priority level, comprising:
- constructing, by a processor of a data messaging system comprising a plurality of processing nodes, a resource model for each processing node of the plurality of processing nodes, the constructing comprising;
monitoring, by the processor, the plurality of processing nodes;
capturing statistical data, by the processor, from each of the plurality of processing nodes about the processing of messages processed by each of the plurality of processing nodes of the data messaging system; and
building the resource model, by the processor, for each of the plurality of processing nodes based on the captured statistical data such the data messaging system is configured to determine what resources will be used by each of plurality of processing nodes when processing subsequent messages;
based on the constructed resource models, identifying, by the processor, a processing node in the plurality of processing nodes that will experience limiting processing resources during operation of the data messaging system and then associating, by the processor, a staging area with the identified processing node;
after associating the staging area with the identified processing node, receiving, by the processor, a first message for processing at a processing node of the plurality of processing nodes;
determining that the processing node has an associated message staging area;
determining, by the processor, that a second message received by the data messaging system has a higher priority value than the first message;
after determining that the second message received by the data messaging system has a higher priority value than the first message;
determining, by the processor, based on the constructed resource model of the processing node, an amount of at least one processing resource required by the first message;
determining, by the processor, based on the constructed resource model of the processing node, an amount of the at least one processing resource required by the second message;
determining, by the processor, the amount of the at least one processing resource available to the processing node; and
delaying processing of the first message by the processing node based only on a determination, using the determined amounts, that processing of the first message by the processing node would delay the processing of the second message.
2 Assignments
0 Petitions
Accused Products
Abstract
A data messaging system includes a plurality of processing nodes. Each message processed by the data messaging system has associated with it a priority level. A first message is received for processing at a processing node of the plurality of processing nodes. It is determined if the processing node has an associated message staging area, and if a second message received by the data messaging system has a higher priority value than the first message. Based on a determination that the second message has a higher priority value than the first message, the processing of the first message by the processing node is delayed, and the second message is processed using the processing node instead.
-
Citations
11 Claims
-
1. A computer-implemented method of processing messages in a data messaging system comprising a plurality of processing nodes, wherein each message processed by the data messaging system has associated with it a priority level, comprising:
-
constructing, by a processor of a data messaging system comprising a plurality of processing nodes, a resource model for each processing node of the plurality of processing nodes, the constructing comprising; monitoring, by the processor, the plurality of processing nodes; capturing statistical data, by the processor, from each of the plurality of processing nodes about the processing of messages processed by each of the plurality of processing nodes of the data messaging system; and building the resource model, by the processor, for each of the plurality of processing nodes based on the captured statistical data such the data messaging system is configured to determine what resources will be used by each of plurality of processing nodes when processing subsequent messages; based on the constructed resource models, identifying, by the processor, a processing node in the plurality of processing nodes that will experience limiting processing resources during operation of the data messaging system and then associating, by the processor, a staging area with the identified processing node; after associating the staging area with the identified processing node, receiving, by the processor, a first message for processing at a processing node of the plurality of processing nodes; determining that the processing node has an associated message staging area; determining, by the processor, that a second message received by the data messaging system has a higher priority value than the first message; after determining that the second message received by the data messaging system has a higher priority value than the first message; determining, by the processor, based on the constructed resource model of the processing node, an amount of at least one processing resource required by the first message; determining, by the processor, based on the constructed resource model of the processing node, an amount of the at least one processing resource required by the second message; determining, by the processor, the amount of the at least one processing resource available to the processing node; and delaying processing of the first message by the processing node based only on a determination, using the determined amounts, that processing of the first message by the processing node would delay the processing of the second message. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A data messaging system for processing messages comprising a processor communicatively coupled to a memory, a plurality of processing nodes, wherein each message processed by the data messaging system has associated with it a priority level, wherein the data messaging system is configured to:
-
construct a resource model for each processing node of the plurality of processing nodes by at least; monitoring the plurality of processing nodes; capturing statistical data, by the processor, from each of the plurality of processing nodes about the processing of messages processed by each of the plurality of processing nodes of the data messaging system; and building the resource model, by the processor, for each of the plurality of processing nodes based on the captured statistical data such the data messaging system is configured to determine what resources will be used by each of plurality of processing nodes when processing subsequent messages; based on the constructed resource models, identify a processing node in the plurality of processing nodes that will experience limiting processing resources during operation of the data messaging system, and then associate a staging area with the identified processing node in the data messaging system after associating the staging area with the identified processing node, receive a first message for processing at a processing node of the plurality of processing nodes; determine that the processing node has an associated message staging area; determine that a second message received by the data messaging system has a higher priority value than the first message; after determining that the second message received by the data messaging system has a higher priority value than the first message; determine, based on the constructed resource model of the processing node, an amount of at least one processing resource required by the first message; determine, based on the constructed resource model of the processing node, an amount of the at least one processing resource required by the second message; determine the amount of the at least one processing resource available to the processing node; and delay processing of the first message by the processing node based only on a determination, using the determined amounts, that the processing of the first message by the processing node would delay the processing of the second message. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A computer program product for processing messages in a data messaging system comprising a plurality of processing nodes, wherein each message processed by the data messaging system has associated with it a priority level, the computer program product comprising a non-transitory computer-readable storage medium having computer-readable program code embodied therewith, the computer-readable program code configured to perform a method comprising:
-
constructing, by a processor of a data messaging system comprising a plurality of processing nodes, a resource model for each processing node of the plurality of processing nodes, the constructing comprising; monitoring, by the processor, the plurality of processing nodes; capturing statistical data, by the processor, from each of the plurality of processing nodes about the processing of messages processed by each of the plurality of processing nodes of the data messaging system; and building the resource model, by the processor, for each of the plurality of processing nodes based on the captured statistical data such the data messaging system is configured to determine what resources will be used by each of plurality of processing nodes when processing subsequent messages; based on the constructed resource models, identifying, by the processor, a processing node in the plurality of processing nodes that will experience limiting processing resources during operation of the data messaging system and then associating, by the processor, a staging area with the identified processing node; after associating the staging area with the identified processing node, receiving, by the processor, a first message for processing at a processing node of the plurality of processing nodes; determining that the processing node has an associated message staging area; determining, by the processor, that a second message received by the data messaging system has a higher priority value than the first message; after determining that the second message received by the data messaging system has a higher priority value than the first message; determining, by the processor, based on the constructed resource model of the processing node, an amount of at least one processing resource required by the first message; determining, by the processor, based on the constructed resource model of the processing node, an amount of the at least one processing resource required by the second message; determining, by the processor, the amount of the at least one processing resource available to the processing node; and delaying processing of the first message by the processing node based only on a determination, using the determined amounts, that the processing of the first message by the processing mode would delay the processing of the second message.
-
Specification