Dynamically modifying program execution capacity
First Claim
1. A computer-implemented method comprising:
- obtaining, at a program execution service, and for an application available for execution by the program execution service, instructions associated with a plurality of triggers for increasing or decreasing resources for executing the application using the program execution service, wherein each trigger in the plurality of triggers specifies a number of resources to add or remove for the executing of the application if the trigger is used;
measuring, while executing the application, application load;
determining, based at least in part on the application load, that multiple triggers of the plurality are satisfied;
selecting, by the program execution service and from the multiple triggers that are satisfied, a trigger for use in increasing or decreasing resources for the executing of the application, by selecting a trigger from the multiple triggers that specifies a largest increase in the number of resources if resources are being increased or that specifies a smallest decrease in the number of resources if resources are being decreased; and
modifying, by the program execution service and in response to the determining, an amount of resources in use for the executing of the application by increasing or decreasing the amount of the resources in the number of resources specified by the selected trigger.
0 Assignments
0 Petitions
Accused Products
Abstract
Techniques are described for managing program execution capacity, such as for a group of computing nodes that are provided for executing one or more programs for a user. In some situations, dynamic program execution capacity modifications for a computing node group that is in use may be performed periodically or otherwise in a recurrent manner, such as to aggregate multiple modifications that are requested or otherwise determined to be made during a period of time, and with the aggregation of multiple determined modifications being able to be performed in various manners. Modifications may be requested or otherwise determined in various manners, including based on dynamic instructions specified by the user, and on satisfaction of triggers that are previously defined by the user. In some situations, the techniques are used in conjunction with a fee-based program execution service that executes multiple programs on behalf of multiple users of the service.
27 Citations
19 Claims
-
1. A computer-implemented method comprising:
-
obtaining, at a program execution service, and for an application available for execution by the program execution service, instructions associated with a plurality of triggers for increasing or decreasing resources for executing the application using the program execution service, wherein each trigger in the plurality of triggers specifies a number of resources to add or remove for the executing of the application if the trigger is used; measuring, while executing the application, application load; determining, based at least in part on the application load, that multiple triggers of the plurality are satisfied; selecting, by the program execution service and from the multiple triggers that are satisfied, a trigger for use in increasing or decreasing resources for the executing of the application, by selecting a trigger from the multiple triggers that specifies a largest increase in the number of resources if resources are being increased or that specifies a smallest decrease in the number of resources if resources are being decreased; and modifying, by the program execution service and in response to the determining, an amount of resources in use for the executing of the application by increasing or decreasing the amount of the resources in the number of resources specified by the selected trigger. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A non-transitory computer-readable medium including stored contents that cause one or more computing systems of a program execution service to perform automated operations, the automated operations including:
-
obtaining, at the program execution service, instructions associated with an application that include a plurality of triggers for increasing or decreasing resources for executing the application using the program execution service, wherein each trigger in the plurality of triggers specifies a number of resources to add or remove for the executing of the application; measuring, while executing the application, application load; determining, based at least in part on the application load, that multiple triggers are satisfied; selecting, by the program execution service and from the multiple triggers that are satisfied, a trigger to use that specifies a largest increase in the number of resources if resources are being increased or that specifies a smallest decrease in the number of resources if resources are being decreased; and modifying the number of resources in use for the executing of the application by increasing or decreasing the number of resources as specified by the selected trigger. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A system comprising:
-
one or more hardware processors; and one or more memories with stored software instructions that, when executed by at least one of the hardware processors, cause the at least one hardware processor to; obtain, at a program execution service, instructions from a client associated with an application and indicating a plurality of triggers for increasing or decreasing resources for executing the application using the program execution service, wherein each trigger in the plurality of triggers specifies a number of resources to add or remove for the executing of the application; measure, while executing the application, application load; determine, based at least in part on the application load, that multiple triggers are satisfied; select, from the multiple triggers that are satisfied, a trigger to use that specifies a largest increase in the number of resources or that specifies a smallest decrease in the number of resources; and modify the number of resources in use for the executing of the application by increasing or decreasing the number of resources as specified by the selected trigger. - View Dependent Claims (15, 16, 17, 18, 19)
-
Specification