System and method for triggering software rejuvenation using a customer affecting performance metric
A computer-implemented method for triggering a software rejuvenation system and/or method includes receiving a request for resources, determining an estimated response time to the request for resources, determining that the estimated response time is greater than a first threshold, determining that a number of estimated response times greater than the first threshold is greater than or equal to a second threshold, and triggering the software rejuvenation system and/or method.
1 . A computer-implemented method for triggering a software rejuvenation system and/or method comprising:
receiving a request for resources;
determining an estimated response time to the request for resources;
determining that the estimated response time is greater than a first threshold;
determining that a number of estimated response times greater than the first threshold is greater than or equal to a second threshold; and
triggering the software rejuvenation system and/or method.
2 . The computer-implemented method of claim 1 , wherein determining the estimated response time comprises:
sampling a plurality of response times; and
determining an average response time, wherein the average response time is used as the estimated response time.
3 . The computer-implemented method of claim 1 , wherein the first threshold varies according to a number of estimated response times greater than the first threshold.
4 . The computer-implemented method of claim 3 , further comprising increasing the first threshold with the number of response times greater than the first threshold.
5 . The computer-implemented method of claim 1 , wherein the second threshold is a positive integer.
6 . A computer-implemented method for triggering a software rejuvenation system and/or method comprising:
receiving a request for resources;
determining a response time to the request for resources;
increasing a number of response times greater than a first threshold upon determining that the response time is greater than the first threshold;
decreasing the number of response times greater than the first threshold upon determining that the response time is less than the first threshold;
determining that the number of response times greater than the first threshold is greater than or equal to a second threshold; and
triggering the software rejuvenation system and/or method.
7 . The computer-implemented method of claim 6 , further comprising increasing the first threshold by a number of standard deviations upon determining the number of response times greater than the first threshold is greater than D, wherein the first threshold can be increased K standard deviations, and wherein K and D are the same or different positive integers, and the second threshold is K multiplied by D.
8 . The computer-implemented method of claim 6 , further comprising decreasing the first threshold by a number of standard deviations upon determining the number of response times greater than the first threshold is less than D, wherein the first threshold can be decreased K standard deviations, and wherein K and D are the same or different positive integers, and the second threshold is K multiplied by D.
9 . The computer-implemented method of claim 6 , wherein the request for resources is generated by a client.
10 . The computer-implemented method of claim 6 , wherein the request for resources is generated by a load injector.
11 . The computer-implemented method of claim 6 , further comprising initializing with the number of response times greater than the first threshold at zero and the first threshold set at a lowest level.
12 . A program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform method steps for triggering a software rejuvenation system and/or method, the method steps comprising:
receiving a request for resources;
determining a characteristic of a response to the request for resources;
comparing the characteristic of the response to a first threshold;
comparing a number of times the characteristic of the response is greater than the first threshold to a second threshold; and
triggering the software rejuvenation system and/or method upon determining that the number of times the characteristic of the response is greater than the first threshold is greater than or equal to the second threshold.
13 . The method of claim 12 , wherein the first threshold varies according to the number of times the characteristic of the response is greater than the first threshold.
14 . The method of claim 13 , further comprising increasing the first threshold with the number of times the characteristic of the response is greater than the first threshold.
15 . The method of claim 12 , wherein the second threshold is a positive integer.
16 . A program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform method steps for triggering a software rejuvenation system and/or method, the method steps comprising:
receiving a request for resources;
determining a characteristic of a response to the request for resources;
comparing the characteristic of the response to a first threshold;
comparing a number of times the characteristic of the response is less than the first threshold to a second threshold; and
triggering the software rejuvenation system and/or method upon determining that the number of times the characteristic of the response is less than the first threshold is greater than or equal to the second threshold.
17 . The method of claim 16 , wherein the first threshold varies according to the number of times the characteristic of the response is less than the second threshold.
18 . The computer-implemented method of claim 17 , further comprising increasing the first threshold with the number of times the characteristic of the response is less than the first threshold.
19 . The computer-implemented method of claim 16 , wherein the second threshold is a positive integer.
20 . A computer-implemented method for distinguishing between a burst of requests and a decrease in performance of a software product comprising:
receiving a plurality of requests for resources;
comparing each of the plurality of requests to a variable threshold;
varying the variable threshold to distinguish between a burst of requests and a decrease in performance of a software product for handling the plurality of requests; and
triggering a software rejuvenation system and/or method upon determining that a number of response times greater than the variable threshold at a predetermined highest level is greater than or equal to a second threshold.