Method and system to alleviate denial-of-service conditions on a server
First Claim
1. A method for processing data in a multithreaded application in a data processing system, the method comprising:
- placing work items into a data structure that is maintained in the data processing system, wherein the work items are pending processing by the multithreaded application;
processing work items from the data structure by a plurality of threads within the multithreaded application in accordance with a first algorithm;
processing work items from the data structure by a thread within the multithreaded application in accordance with a second algorithm that differs from the first algorithm, wherein the thread is configured distinctly from the plurality of threads; and
restricting the processing of work items by the thread in accordance with a second set of parameters used to evaluate workflow conditions, wherein the step of restricting the processing of work items by the thread in accordance with a second set of parameters further comprises;
evaluating workflow conditions of the plurality of threads for a characteristic of a workflow condition as controlled by the second set of parameters;
in response to a determination of whether or not the workflow conditions of the plurality of threads has a characteristic indicated by the second set of parameters, processing or not processing work items by the thread, respectively;
reevaluating workflow conditions of the plurality of threads for a characteristic of a workflow condition as controlled by the second set of parameters in response to processing a work item by the thread;
in response to a determination of whether or not the workflow conditions of the plurality of threads has a characteristic indicated by the second set of parameters, processing or not processing work items by the thread, respectively; and
adjusting one or more parameters in the second set of parameters in accordance with a third set of parameters used to regulate a time period associated with processing the work items by the thread in response to a determination that workflow conditions do not have a characteristic indicated by the second set of parameters.
1 Assignment
0 Petitions
Accused Products
Abstract
A method is presented for processing data in a multithreaded application to alleviate impaired or substandard performance conditions. Work items that are pending processing by the multithreaded application are placed into a data structure. The work items are processed by a plurality of threads within the multithreaded application in accordance with a first algorithm, e.g., first-in first-out (FIFO). A thread within the multithreaded application is configured apart from the plurality of threads such that it processes work items in accordance with a second algorithm that differs from the first algorithm, thereby avoiding the impairing condition. For example, the thread may process a pending work item only if it has a particular characteristic. The thread restricts its own processing of work items by intermittently evaluating workflow conditions for the plurality of threads; if the workflow conditions improve or are unimpaired, then the thread does not process any work items.
-
Citations
3 Claims
-
1. A method for processing data in a multithreaded application in a data processing system, the method comprising:
-
placing work items into a data structure that is maintained in the data processing system, wherein the work items are pending processing by the multithreaded application; processing work items from the data structure by a plurality of threads within the multithreaded application in accordance with a first algorithm; processing work items from the data structure by a thread within the multithreaded application in accordance with a second algorithm that differs from the first algorithm, wherein the thread is configured distinctly from the plurality of threads; and restricting the processing of work items by the thread in accordance with a second set of parameters used to evaluate workflow conditions, wherein the step of restricting the processing of work items by the thread in accordance with a second set of parameters further comprises; evaluating workflow conditions of the plurality of threads for a characteristic of a workflow condition as controlled by the second set of parameters; in response to a determination of whether or not the workflow conditions of the plurality of threads has a characteristic indicated by the second set of parameters, processing or not processing work items by the thread, respectively; reevaluating workflow conditions of the plurality of threads for a characteristic of a workflow condition as controlled by the second set of parameters in response to processing a work item by the thread; in response to a determination of whether or not the workflow conditions of the plurality of threads has a characteristic indicated by the second set of parameters, processing or not processing work items by the thread, respectively; and adjusting one or more parameters in the second set of parameters in accordance with a third set of parameters used to regulate a time period associated with processing the work items by the thread in response to a determination that workflow conditions do not have a characteristic indicated by the second set of parameters. - View Dependent Claims (2)
-
-
3. A method for processing data in a multithreaded application in a data processing system, the method comprising:
-
placing work items into a data structure that is maintained in the data processing system, wherein the work items are pending processing by the multithreaded application; processing work items from the data structure by a plurality of threads within the multithreaded application in accordance with a first algorithm; processing work items from the data structure by a thread within the multithreaded application in accordance with a second algorithm that differs from the first algorithm, wherein the thread is configured distinctly from the plurality of threads; and restricting the processing of work items by the thread in accordance with a second set of parameters used to evaluate workflow conditions, wherein the step of restricting the processing of work items by the thread in accordance with a second set of parameters further comprises; evaluating workflow conditions of the plurality of threads for a characteristic of a workflow condition as controlled by the second set of parameters; and in response to a determination of whether or not the workflow conditions of the plurality of threads has a characteristic indicated by the second set of parameters, processing or not processing work items by the thread, respectively; selecting one or more characteristics of the workflow conditions to be evaluated as indicated by a parameter in the second set of parameters; indicating, by the parameter, one or more characteristics from the group consisting of;
a number of work items in the data structure;
a time period since a work item in the data structure has been processed by the plurality of threads;
the number of work items and the time period;
or the number of work items or the time period.
-
Specification