Message-based computation request scheduling
AssigneeAmazon Technologies, Inc.
InventorsTimothy Allen Wagner, Derek Steven Manwaring, Sean Philip Reque, Dylan Chandler Thomas
Life of this patent
Estimating the term…
Abstract
A system for routing requests to execute user code based on how frequently the user code is executed is provided. The system may be configured to receive a request to execute user code on a virtual compute system, where the virtual compute system comprises multiple fleets of virtual machine instances. The system may be further configured to determine whether the user code associated with the request satisfies one or more usage criteria, and based on the determination, route the request to the appropriate fleet of virtual machine instances.
Claims20
A system, comprising:
- one or more processors;
- and
- one or more memories, the one or more memories having stored thereon instructions, which, when executed by the one or more processors, configure the one or more processors to:
- receive a request to execute a first program code, the request including a first identifier associated with the first program code;
- access, based at least on the first identifier included in the request, historical data indicative of a first number of requests to execute the first program code that were received over a period of time;
- identify, based at least on the first number of requests that were received over the period of time to execute the first program code, a first instance manager from a set of instance managers that are each configured to acquire compute capacity on behalf of a different subset of incoming code execution requests;
- route the request to the first instance manager;
- and
- cause the first program code to be executed on a virtual machine instance acquired by the first instance manager.
A computer-implemented method, comprising:
- receiving a request to execute a first program code, the request including a first identifier associated with the first program code;
- accessing, based at least on the first identifier included in the request, historical data indicative of a first number of requests that were received over a period of time to execute the first program code;
- identifying, based at least on the first number of requests that were received over the period of time to execute the first program code, a first instance manager from a set of instance managers that are each configured to acquire compute capacity on behalf of a different subset of incoming code execution requests;
- routing the request to the first instance manager;
- and
- causing the first program code to be executed on a virtual machine instance acquired by the first instance manager.
Non-transitory physical computer storage storing instructions, which, when executed by one or more processors, configure the one or more processors to:
- receive a request to execute a first program code, the request including a first identifier associated with the first program code;
- access, based at least on the first identifier included in the request, historical data indicative of a first number of requests to execute the first program code that were received over a period of time;
- identify, based at least on the first number of requests that were received over the period of time to execute the first program code, a first instance manager from a set of instance managers that are each configured to acquire compute capacity on behalf of a different subset of incoming code execution requests;
- route the request to the first instance manager;
- and
- cause the first program code to be executed on a virtual machine instance acquired by the first instance manager.
Dependencies are inferred from the claim text.