Modular Event-Driven Processing
First Claim
Patent Images
1. 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 respective 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;
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;
an administrative module adapted for controlling the operation of the plurality of thread boundaries and tasks included within each of the thread boundaries.
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.
-
Citations
12 Claims
-
1. 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 respective 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;
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;
an administrative module adapted for controlling the operation of the plurality of thread boundaries and tasks included within each of the thread boundaries. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer method for processing events, the computer method comprising:
-
processing a high level description of an event processing system that specifies communicative couplings relating to a plurality of thread boundaries, wherein the plurality of thread boundaries are capable of performing a service, wherein each of the thread boundaries includes at least one task capable of performing at least a part of the service performed by the respective thread boundary, a plurality of thread boundary queues coupled to the respective thread boundaries, wherein the each thread boundary queue is capable of holding one or more events for routing to the thread boundary to which the thread boundary is coupled, a resource allocation module capable of allocating one or more resources to the respective thread boundaries based on thread boundary queue depth of each respective thread boundary queue, wherein the thread boundary queue depth is based on a number of events being held in the thread boundary queue;
configuring the at least one task of each thread boundary in accordance with the high level description;
receiving a modification to the high level description;
dynamically modifying the task configuration in accordance with the received modification. - View Dependent Claims (9, 10, 11, 12)
-
Specification