Programming framework including queueing network
First Claim
Patent Images
1. A computer-implemented queueing system for processing messages in stages comprising:
- an event source for generating work packets, each of said work packets including information relating to one of the messages to be processed;
a parser for parsing the information included in each of said work packets to determine a type of said work packets, said type including one or more attributes each corresponding to a single operation, said single operation being discrete and specific for processing each of the work packets according to the one or more attributes, said parser decomposing each of said work packets according to the attributes corresponding thereto;
a plurality of inbound queues for queueing the decomposed work packets according to the one or more attributes of the determined types of the work packets before processing, each of the plurality of inbound queues being associated with one of the attributes of the determined types of the work packets such that each individual inbound queue includes decomposed work packets corresponding to the single operation; and
a plurality of application services for processing the queued work packets, each of said application services being associated with one of the inbound queues, each of said application services defining a processing stage for executing the single operation for each of the work packets in a batch of the work packets queued therefor by the respective inbound queue, said single operation corresponding to the attribute associated with the respective inbound queue, wherein each of the plurality of application services processes the work packets serially using a single thread of execution.
2 Assignments
0 Petitions
Accused Products
Abstract
A queueing network framework for processing messages in stages in a multi-processor environment. An event source generates work packets that have information relating to the messages to be processed. The work packets are queued before processing by a plurality of application services. Each application service follows a queue and defines a processing stage. At each processing stage, the application service operates on a batch of the work packets queued for it by the respective queue.
-
Citations
32 Claims
-
1. A computer-implemented queueing system for processing messages in stages comprising:
-
an event source for generating work packets, each of said work packets including information relating to one of the messages to be processed; a parser for parsing the information included in each of said work packets to determine a type of said work packets, said type including one or more attributes each corresponding to a single operation, said single operation being discrete and specific for processing each of the work packets according to the one or more attributes, said parser decomposing each of said work packets according to the attributes corresponding thereto; a plurality of inbound queues for queueing the decomposed work packets according to the one or more attributes of the determined types of the work packets before processing, each of the plurality of inbound queues being associated with one of the attributes of the determined types of the work packets such that each individual inbound queue includes decomposed work packets corresponding to the single operation; and a plurality of application services for processing the queued work packets, each of said application services being associated with one of the inbound queues, each of said application services defining a processing stage for executing the single operation for each of the work packets in a batch of the work packets queued therefor by the respective inbound queue, said single operation corresponding to the attribute associated with the respective inbound queue, wherein each of the plurality of application services processes the work packets serially using a single thread of execution. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer-implemented method of processing a plurality of messages in a distributed processing system, said computer-implemented method comprising:
-
generating one or more work packets, each of said work packets including information relating to one of the messages to be processed; parsing the information included in each of said work packets to determine a type of said work packets, said type including one or more attributes each corresponding to a single operation, said single operation being discrete and specific for processing each of the work packets according to the one or more attributes; decomposing each of said work packets as a function of the attributes corresponding thereto by defining a plurality of processing stages, each of said processing stages including an application service corresponding to the single operation of one of the attributes of the determined types of the work packets; queueing the decomposed work packets according to the attributes of the determined types of the work packets before each of the processing stages; and executing each of the application services in a batch of the single operation of the determined types of work packets queued for the respective processing stage, wherein each of the application services processes the work packets serially using a single thread of execution. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. One or more computer-readable storage media having computer-executable components for processing messages in stages comprising:
-
an event source component for generating work packets, each of said work packets including information relating to one of the messages to be processed; a parsing component for parsing the information included in each of said work packets to determine a type of said work packets, said type including one or more attributes each corresponding to a single operation, said single operation being discrete and specific for processing each of the work packets according to the one or more attributes, said parsing component decomposing each of said work packets as a function of the attributes corresponding thereto; a plurality of inbound queue components for queueing the decomposed work packets according to the one or more attributes of the determined types of the work packets before processing, each of the plurality of inbound queue components being associated with one of the attributes of the determined types of the work packets such that the decomposed work packets are processed according to the single operation; and a plurality of application service components for processing the queued work packets, each of said application service components being associated with one of the inbound queue components, each of said application service components defining a processing stage for executing the single operation for each of the work packets in a batch of the work packets queued therefor by the respective inbound queue component, said single operation corresponding to the attribute associated with the respective inbound queue, wherein the plurality of application service components process the work packets serially each using a single thread of execution. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. A computer-implemented method of developing server applications for use in a multi-processor environment comprising:
-
defining a plurality of processing stages for processing a plurality of requests, each of said processing stages including a dedicated application service, each of said application services having a single thread of execution, said single thread of execution of each dedicated application service being discrete and specific for processing the plurality of requests in each of the plurality of processing stages; generating one or more work packets, each of said work packets including information relating to one of the requests to be processed; parsing the information included in each of said work packets to determine a type of said work packets, said type including one or more attributes each corresponding to the single thread of execution; decomposing each of said work packets according to the attributes corresponding thereto; providing queues before each of the processing stages for queueing the decomposed work packets according to one of the attributes of the determined types of the work packets, each of the queues indicating one of the attributes of the determined types of the work packets, each of said application services being executed in a batch of the work packets queued for the respective processing stage corresponding to one of the attributes such that each individual queue includes decomposed work packets to be processed serially according to the single thread of execution; and routing the work packets through the processing stages until the requests are satisfied. - View Dependent Claims (30, 31, 32)
-
Specification