Pre-triggers for code execution environments
First Claim
1. A computer-implemented method comprising:
- obtaining a request to execute first user-specified code at an on-demand code execution environment, wherein the request to execute first user-specified code is obtained from one or more computing systems distinct from the on-demand code execution environment;
obtaining historical data correlating prior requests to execute the first user-specified code with subsequent requests to execute second user-specified code that is distinct from the first user-specified code;
determining, based at least in part on the historical data, that a request to execute the second user-specified code is predicted to occur subsequent to obtaining the request to execute the first user-specified code;
based at least partly on determining that the request to execute the second user-specified code is predicted to occur, and prior to receiving the request to execute the second user-specified code, initializing at least one virtual machine instance with an operating environment configured to enable execution of the second user-specified code;
obtaining the request to execute the second user-specified code; and
executing the second user-specified code within the operating environment.
0 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods are described for managing initialization of virtual machine instances within an on-demand code execution environment or other distributed code execution environment. Such environments utilize pre-initialized virtual machine instances to enable execution of user-specified code in a rapid manner, without delays typically caused by initialization of the virtual machine instances. However, because the number of pre-initialized virtual machine instances maintained at an on-demand code execution environment is typically limited, insufficient number of pre-initialized virtual machine instances may be available at the on-demand code execution environment during times of heavy use. Embodiments described herein utilize pre-trigger notifications to indicate to the on-demand code execution environment that subsequent requests to execute user-specified code are likely to occur. The on-demand code execution environment may therefore pre-initialize additional virtual machine instances in preparation for the subsequent requests, reducing delay that would be required to initialize the instances after obtaining to the requests.
370 Citations
20 Claims
-
1. A computer-implemented method comprising:
-
obtaining a request to execute first user-specified code at an on-demand code execution environment, wherein the request to execute first user-specified code is obtained from one or more computing systems distinct from the on-demand code execution environment; obtaining historical data correlating prior requests to execute the first user-specified code with subsequent requests to execute second user-specified code that is distinct from the first user-specified code; determining, based at least in part on the historical data, that a request to execute the second user-specified code is predicted to occur subsequent to obtaining the request to execute the first user-specified code; based at least partly on determining that the request to execute the second user-specified code is predicted to occur, and prior to receiving the request to execute the second user-specified code, initializing at least one virtual machine instance with an operating environment configured to enable execution of the second user-specified code; obtaining the request to execute the second user-specified code; and executing the second user-specified code within the operating environment. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system comprising:
-
a processor; and a data store including computer-executable instructions executable by the processor that cause the system to; obtain a request to execute first user-specified code at an on-demand code execution environment, wherein the request to execute the first user-specified code is obtained from one or more computing systems distinct from the on-demand code execution environment; obtain historical data correlating prior requests to execute the first user-specified code with subsequent requests to execute second user-specified code that is distinct from the first user-specified code; determine, based at least in part on the historical data, that a request to execute the second user-specified code is predicted to occur subsequent to obtaining the request to execute the first user-specified code; based at least partly on determining that the request to execute the second user-specified code is predicted to occur, and prior to receiving the request to execute the second user-specified code, configure at least one virtual machine instance with an operating environment configured to enable execution of the second user-specified code; obtain the request to execute the second user-specified code; and execute the second user-specified code within the operating environment. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. Non-transitory computer readable media comprising computer-executable instructions that when executed by a computing system cause the computing system to:
-
obtain a request to execute first user-specified code at an on-demand code execution environment, wherein the request to execute first user-specified code is obtained from one or more computing systems distinct from the on-demand code execution environment; obtain historical data correlating prior requests to execute the first user-specified code with subsequent requests to execute second user-specified code that is distinct from the first user-specified code; determine, based at least in part on the historical data, that a request to execute the second user-specified code is predicted to occur subsequent to obtaining the request to execute the first user-specified code; based at least partly on determining that the request to execute the second user-specified code is predicted to occur, and prior to receiving the request to execute the second user-specified code, configure at least one virtual machine instance with an operating environment configured to enable execution of the second user-specified code; obtain the request to execute the second user-specified code; and execute the second user-specified code within the operating environment. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification