Programmatic event detection and message generation for requests to execute program code
First Claim
1. A system for providing event messages for requests to execute program code on a virtual compute system, the system comprising:
- an electronic data store configured to store at least programmatic event handling information related to a program code of a user; and
an event triggering computing system comprising one or more hardware computing devices executing specific computer-executable instructions said event triggering computing system in communication with a message queue system, the event triggering computing system configured to at least;
detect an event on the event triggering computing system, wherein the event is detected at a first time;
determine, based on the programmatic event handling information related to the program code of the user, whether the event is designated to trigger execution of the program code of the user on the virtual compute system, said programmatic event handling information accessed from the electronic data store, wherein the virtual compute system is configured to begin executing the program code at a second time, wherein a time period determined as a difference between the first time and the second time is shorter than a predetermined duration;
in response to determining that the event is designated to trigger execution of the program code of the user, generate an event message based at least in part on the programmatic event handling information related to the program code of the user accessed from the electronic data store, wherein the event message comprises at least a user account identifier and programmatic information organized in a schema usable for execution of the program code on behalf of the user on a container on an instance on the virtual compute system, said programmatic information indicating at least (1) a function of the program code to execute in response to the detected event and (2) one or more event message parameters for execution of the program code; and
provide the event message to an intermediary message queue system, wherein the intermediary message queue system is further in communication with the virtual compute system.
1 Assignment
0 Petitions
Accused Products
Abstract
A service manages a plurality of virtual machine instances for low latency execution of user codes. The service can provide the capability to execute user code in response to events triggered on an auxillary service to provide implicit and automatic rate matching and scaling between events being triggered on the auxiliary service and the corresponding execution of user code on various virtual machine instances. An auxiliary service may be configured as an event triggering service to detect events and generate event messages for execution of the user codes. The service can request, receive, or poll for event messages directly from the auxiliary service or via an intermediary message service. Event messages can be rapidly converted to requests to execute user code on the service. The time from processing the event message to initiating a request to begin code execution is less than a predetermined duration, for example, 100 ms.
-
Citations
20 Claims
-
1. A system for providing event messages for requests to execute program code on a virtual compute system, the system comprising:
-
an electronic data store configured to store at least programmatic event handling information related to a program code of a user; and an event triggering computing system comprising one or more hardware computing devices executing specific computer-executable instructions said event triggering computing system in communication with a message queue system, the event triggering computing system configured to at least; detect an event on the event triggering computing system, wherein the event is detected at a first time; determine, based on the programmatic event handling information related to the program code of the user, whether the event is designated to trigger execution of the program code of the user on the virtual compute system, said programmatic event handling information accessed from the electronic data store, wherein the virtual compute system is configured to begin executing the program code at a second time, wherein a time period determined as a difference between the first time and the second time is shorter than a predetermined duration; in response to determining that the event is designated to trigger execution of the program code of the user, generate an event message based at least in part on the programmatic event handling information related to the program code of the user accessed from the electronic data store, wherein the event message comprises at least a user account identifier and programmatic information organized in a schema usable for execution of the program code on behalf of the user on a container on an instance on the virtual compute system, said programmatic information indicating at least (1) a function of the program code to execute in response to the detected event and (2) one or more event message parameters for execution of the program code; and provide the event message to an intermediary message queue system, wherein the intermediary message queue system is further in communication with the virtual compute system. - View Dependent Claims (2, 3, 4)
-
-
5. A system, comprising:
an auxiliary computing system comprising one or more hardware computing devices executing specific computer-executable instructions and configured to at least; detect an event designated to trigger execution of a program code of a user on a virtual compute system, wherein the event is detected at a first time; in response to detection of the event, generate an event message based at least in part on programmatic event handling information related to the program code of the user accessed from an electronic data store, wherein the event message comprises at least a user account identifier and event metadata for execution of the program code on the virtual compute system, said event metadata identifying a function of the program code to execute and one or more input parameters to the function, wherein the virtual compute system is configured to begin executing the program code at a second time, wherein a time period determined as a difference between the first time and the second time is shorter than a predetermined duration; and provide the event message to an intermediary message queue system, wherein the intermediary message queue system is further in communication with the virtual compute system. - View Dependent Claims (6, 7, 8, 9, 10, 11)
-
12. A computer-implemented method comprising:
as implemented by one or more computing devices configured with specific executable instructions, detecting an event on an event triggering service, said event designated to trigger execution of a program code of a user on a virtual compute system said detecting occurring at a first time; in response to detecting the event, generating an event message based at least in part on programmatic event handling information related to the program code of the user accessed from an electronic data store, wherein the event message comprises at least a user account identifier and event metadata usable for execution of the program code on the virtual compute system; and providing the event message to the virtual compute system, wherein the virtual compute system is configured to begin executing the program code at a second time, wherein a time period determined as a difference between the first time and the second time is shorter than a predetermined duration. - View Dependent Claims (13, 14, 15, 16)
-
17. A computer-readable, non-transitory storage medium storing computer executable instructions that, when executed by one or more computing devices, configure the one or more computing devices to perform operations comprising:
-
detecting, at a first time, an event on an auxiliary service, said event designated to trigger execution of a program code of a user on a virtual compute system; in response to detecting the event, generating an event message based at least in part on event handling information related to the program code of the user, said event handling information accessed from an electronic data store, wherein the event message comprises at least a user account identifier and event metadata for execution of a program code on the virtual compute system, said event metadata comprising data usable by the virtual compute system to determine a function of the program code to execute and one or more input parameters to the function; and providing the event message for execution of the program code on the virtual compute system, wherein the virtual compute system is configured to begin executing the program code at a second time, wherein a time period determined as a difference between the first time and the second time is shorter than a predetermined duration. - View Dependent Claims (18, 19, 20)
-
Specification