Modular event-driven processing
First Claim
Patent Images
1. A method for processing events, the method comprising:
- determining a load at a first thread boundary in a plurality of thread boundaries, wherein the plurality of thread boundaries are capable of performing a service for one or more events, wherein each thread boundary in the plurality of thread boundaries includes at least one task associated with at least a part of the service the at least one task is capable of performing; and
dynamically allocating one or more resources to the first thread boundary based on the load determined, wherein the one or more resources allow the at least one task of the first thread boundary to perform the at least the part of the service associated with the at least one task.
3 Assignments
0 Petitions
Accused Products
Abstract
Each of a plurality of thread boundaries comprises functionality to be performed for a given event by a single thread. A plurality of queues through which events may be routed may be coupled to the thread boundaries. A plurality of tasks may be configured in a defined relationship, each task being associated with a thread boundary and comprising a unit of code for performing a specific function. Resources may be allocated to thread boundaries based on queue depth.
132 Citations
34 Claims
-
1. A method for processing events, the method comprising:
-
determining a load at a first thread boundary in a plurality of thread boundaries, wherein the plurality of thread boundaries are capable of performing a service for one or more events, wherein each thread boundary in the plurality of thread boundaries includes at least one task associated with at least a part of the service the at least one task is capable of performing; and
dynamically allocating one or more resources to the first thread boundary based on the load determined, wherein the one or more resources allow the at least one task of the first thread boundary to perform the at least the part of the service associated with the at least one task. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A computer system for processing events, the computer system comprising:
-
a plurality of thread boundaries, wherein the plurality of thread boundaries are capable of performing a service, wherein a first thread boundary in the plurality of thread boundaries includes at least one task capable of performing at least a part of the service;
a plurality of thread boundary queues coupled to the thread boundaries, wherein the first thread boundary includes a first thread boundary queue capable of holding one or more events for routing to the first thread boundary; and
a resource allocation module capable of allocating one or more resources to the first thread boundary based on a first thread boundary queue depth of the first thread boundary queue, wherein the first thread boundary queue depth is based on a number of events being held in the first thread boundary queue. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A computer system for processing, the computer system comprising:
-
a first thread boundary comprising at least one task, wherein a first task in the first thread boundary comprises processing functionality to perform a first function;
a second thread boundary comprising at least one task, wherein a second task in the second thread boundary comprises processing functionality to perform a second function;
a first thread boundary queue coupled to the first thread boundary;
a second thread boundary queue coupled to the second thread boundary, wherein the second thread boundary queue connects the first thread boundary and the second thread boundary such that the one or more events are routed from the first thread boundary to the second thread boundary through the second thread boundary queue; and
a resource allocation module capable of allocating one or more resources to the first and second thread boundaries, wherein one or more resources allow the first and second tasks to perform their first and second functions, wherein the one or more resources are allocated to the first and second thread boundaries based on a first thread boundary queue depth of the first thread boundary queue and a second thread boundary queue depth of the second thread boundary queue, the first thread boundary receiving a first set of resources in the one or more resources and the second thread boundary receiving a second set of resources in the one or more resources. - View Dependent Claims (27, 28, 29, 30, 31, 32, 33, 34)
-
Specification