Patents by Inventor Timothy Allen Wagner

Timothy Allen Wagner has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20180210760
    Abstract: A system for providing low-latency compute capacity is provided. The system may be configured to route incoming code execution requests based on user indications to use specific containers running on a plurality of virtual machine instances. The system may be configured to process a code execution request, identify, based on the user indication that a specific container previously used to handle a request of similar type is to be used for handling the code execution request, and cause the code execution request to be handled using the specific container.
    Type: Application
    Filed: March 5, 2018
    Publication date: July 26, 2018
    Inventors: Scott Daniel Wisniewski, Marc John Brooker, Timothy Allen Wagner
  • Publication number: 20180203717
    Abstract: A system for providing security mechanisms for secure execution of program code is described. The system may be configured to maintain a plurality of virtual machine instances. The system may be further configured to receive a request to execute a program code and allocate computing resources for executing the program code on one of the virtual machine instances. One mechanism involves executing program code according to a user-specified security policy. Another mechanism involves executing program code that may be configured to communicate or interface with an auxiliary service. Another mechanism involves splitting and executing program code in a plurality of portions, where some portions of the program code are executed in association with a first level of trust and some portions of the program code are executed with different levels of trust.
    Type: Application
    Filed: August 14, 2017
    Publication date: July 19, 2018
    Inventors: Timothy Allen Wagner, Dylan Chandler Thomas, Ajay Nair
  • Patent number: 10013267
    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.
    Type: Grant
    Filed: December 16, 2015
    Date of Patent: July 3, 2018
    Assignee: Amazon Technologies, Inc.
    Inventors: Timothy Allen Wagner, Marc John Brooker
  • Patent number: 10002026
    Abstract: A system for providing low-latency computational capacity from a virtual compute fleet is provided. The system may be configured to maintain a plurality of virtual machine instances on one or more physical computing devices, wherein the plurality of virtual machine instances comprises a first pool comprising a first sub-pool of virtual machine instances and a second sub-pool of virtual machine instances, and a second pool comprising virtual machine instances used for executing one or more program codes thereon. The first sub-pool and/or the second sub-pool may be associated with one or more users of the system. The system may be further configured to process code execution requests and execute program codes on the virtual machine instances of the first or second sub-pool.
    Type: Grant
    Filed: December 21, 2015
    Date of Patent: June 19, 2018
    Assignee: Amazon Technologies, Inc.
    Inventor: Timothy Allen Wagner
  • Publication number: 20180157568
    Abstract: Systems and methods are described for monitoring code execution within an on-demand code execution environment or other distributed code execution environment. The distributed, asynchronous nature of such environment can make determining the interactions between code executions difficult relative to traditional, non-distributed systems. The present disclosure enables the interrelations between code executions to be monitored by injecting monitoring information into the calls between those code executions. The monitoring information may be propagated through calls, such that a “path” or “trace” of code executions and calls can be determined. Data generated based on the monitoring information can be used to generate a profile for a set of code, so that a developer or other user may easily debug or optimize execution of the code.
    Type: Application
    Filed: November 6, 2017
    Publication date: June 7, 2018
    Inventor: Timothy Allen Wagner
  • Publication number: 20180143865
    Abstract: A system for providing automatic management of low latency computational capacity is provided. The system may be configured to maintain a plurality of virtual machine instances. The system may be further configured to identify a trend in incoming code execution requests to execute program code on a virtual compute system, determine, based on the identified trend, that the plurality of virtual machine instances should be adjusted, and adjust the plurality of virtual machine instances based on the identified trend.
    Type: Application
    Filed: November 27, 2017
    Publication date: May 24, 2018
    Inventors: Timothy Allen Wagner, Sean Philip Reque, Dylan Chandler Thomas, Derek Steven Manwaring, Bradley Nathaniel Burkett
  • Publication number: 20180121245
    Abstract: A system for integrating an endpoint management system and a virtual compute system is provided. The system may be configured to receive a first request to execute a proxy application programming interface (API) associated with a first resource of a plurality of resources maintained by the endpoint management system, determine, based at least in part on the first request and the proxy API, an API mapping definition associated with the proxy API, output a second request to execute a program code on the virtual compute system based on the API mapping definition associated with the proxy API, wherein the second request contains information associated with the first resource, receive a first response from the virtual compute system, wherein the first response contains information regarding the first resource, and output a second response based on the first response received from the virtual compute system.
    Type: Application
    Filed: October 9, 2017
    Publication date: May 3, 2018
    Inventors: Timothy Allen Wagner, Jonathan Paul Thompson
  • Patent number: 9952896
    Abstract: Systems and methods are described for managing asynchronous code executions in an on-demand code execution system or other distributed code execution environment, in which multiple execution environments, such as virtual machine instances, can be used to enable rapid execution of user-submitted code. When asynchronous executions occur, one execution may become blocked while waiting for completion of another execution. Because the on-demand code execution system contains multiple execution environments, the system can efficiently handle a blocked execution by saving a state of the execution, and removing it from its execution environment. When a blocking dependency operation completes, the system can resume the blocked execution using the state information, in the same or different execution environment.
    Type: Grant
    Filed: June 28, 2016
    Date of Patent: April 24, 2018
    Assignee: Amazon Technologies, Inc.
    Inventors: Timothy Allen Wagner, Marc John Brooker, Ajay Nair
  • Patent number: 9928108
    Abstract: Systems and methods are described for generating and executing metaevents within an on-demand code execution environment. The code execution environment can include virtual machine instances that are pre-initialized to enable low latency execution of arbitrary user-defined code. Code execution can typically occur in response to a defined event trigger, such as a call to an application programming interface (API) from an external source. Code execution may also occur in response to metadata regarding the operation of the code execution environment. A user may specify criteria for “metaevents” based on the metadata, and also specify code to be executed in response to satisfaction of the criteria. When the code execution environment determines that the user's criteria is satisfied, a metaevent may be generated that causes execution of the set of code. This execution may, in turn, generate metadata that triggers one or more metaevents.
    Type: Grant
    Filed: September 29, 2015
    Date of Patent: March 27, 2018
    Assignee: Amazon Technologies, Inc.
    Inventors: Timothy Allen Wagner, Scott Daniel Wisniewski
  • Patent number: 9910713
    Abstract: A system for providing low-latency compute capacity is provided. The system may be configured to route incoming code execution requests based on user indications to use specific containers running on a plurality of virtual machine instances. The system may be configured to process a code execution request, identify, based on the user indication that a specific container previously used to handle a request of similar type is to be used for handling the code execution request, and cause the code execution request to be handled using the specific container.
    Type: Grant
    Filed: December 21, 2015
    Date of Patent: March 6, 2018
    Assignee: Amazon Technologies, Inc.
    Inventors: Scott Daniel Wisniewski, Marc John Brooker, Timothy Allen Wagner
  • Publication number: 20180039506
    Abstract: A system for providing dynamic code deployment and versioning is provided. The system may be configured to receive a first request to execute a newer program code on a virtual compute system, determine, based on the first request, that the newer program code is a newer version of an older program code loaded onto an existing container on a virtual machine instance on the virtual compute system, initiate a download of the newer program code onto a second container on the same virtual machine instance, and causing the first request to be processed with the older program code in the existing container.
    Type: Application
    Filed: July 24, 2017
    Publication date: February 8, 2018
    Inventors: Timothy Allen Wagner, Sean Philip Reque, Derek Steven Manwaring, Xin Zhao, Dylan Chandler Thomas
  • Publication number: 20180004572
    Abstract: Systems and methods are described for managing cross-account access to tasks on 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, to ensure security, the code of different users is generally maintained separately, and executed on separate virtual machines. Embodiments described herein enable users of a first account to execute code of a second account, without gaining access to the code itself and while maintaining the privacy and security of each account. Specifically, aliases for a task of a first account can be created on a task of a second account, and used to invoke that task on behalf of the first account. Aliases may also allow users to customize how the task is executed.
    Type: Application
    Filed: June 30, 2016
    Publication date: January 4, 2018
    Inventors: Timothy Allen Wagner, Marc John Brooker, Ajay Nair, Derek Steven Manwaring
  • Publication number: 20180004553
    Abstract: Systems and methods are described for utilizing cross-account access to tasks on an on-demand code execution environment or other distributed code execution environment to implement an application programming interface (API) on a network-accessible service. An on-demand code execution environment can 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. While users may generally execute their own code, the present application enables code of a first user to be executed by a second user, while maintaining the privacy and security of the code and associated accounts. Further, the present application enables a set of tasks to be grouped together as an API, enabling any user to create an API for a service, while the on-demand code execution environment manages execution of the tasks and allocation of underlying computing resources.
    Type: Application
    Filed: June 30, 2016
    Publication date: January 4, 2018
    Inventors: Timothy Allen Wagner, Marc John Brooker, Ajay Nair, Derek Steven Manwaring
  • Publication number: 20170371724
    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 various event sources and initiate execution of other control functions to improve the code execution environment in response to detecting errors or unexpected execution results. The service may maintain or communicate with a separate storage area for storing code execution requests that were not successfully processed by the service. Requests stored in such a storage area may subsequently be re-processed by the service.
    Type: Application
    Filed: May 15, 2017
    Publication date: December 28, 2017
    Inventors: Timothy Allen Wagner, Ajay Nair, Marc John Brooker, Scott Daniel Wisniewski
  • Publication number: 20170371703
    Abstract: Systems and methods are described for managing asynchronous code executions in an on-demand code execution system or other distributed code execution environment, in which multiple execution environments, such as virtual machine instances, can be used to enable rapid execution of user-submitted code. When asynchronous executions occur, a first execution may call a second execution, but not immediately need the second execution to complete. To efficiently allocate computing resources, this disclosure enables the second execution to be scheduled accordingly to a state of the on-demand code execution system, while still ensuring the second execution completes prior to the time required by the first execution. Scheduling of executions can, for example, enable more efficient load balancing on the on-demand code execution system.
    Type: Application
    Filed: June 28, 2016
    Publication date: December 28, 2017
    Inventors: Timothy Allen Wagner, Marc John Brooker, Ajay Nair
  • Publication number: 20170371706
    Abstract: Systems and methods are described for managing asynchronous code executions in an on-demand code execution system or other distributed code execution environment, in which multiple execution environments, such as virtual machine instances, can be used to enable rapid execution of user-submitted code. When asynchronous executions occur, one execution may become blocked while waiting for completion of another execution. Because the on-demand code execution system contains multiple execution environments, the system can efficiently handle a blocked execution by saving a state of the execution, and removing it from its execution environment. When a blocking dependency operation completes, the system can resume the blocked execution using the state information, in the same or different execution environment.
    Type: Application
    Filed: June 28, 2016
    Publication date: December 28, 2017
    Inventors: Timothy Allen Wagner, Marc John Brooker, Ajay Nair
  • Patent number: 9830175
    Abstract: Systems and methods are described for predictively managing calls to tasks on an on-demand code execution environment. Specifically, a task profile can be utilized to predict that a call to a task will be followed by transmission of information to an auxiliary service. Thereafter, the on-demand code execution environment can select a virtual machine to execute the task based, for example, on the speed or reliability of a communication channel between the selected virtual machine and the auxiliary service. If execution of the task does cause transmission of information to the auxiliary service, the information can be transmitted via the communication channel, thereby increasing the speed or reliability of the transmission.
    Type: Grant
    Filed: December 16, 2015
    Date of Patent: November 28, 2017
    Assignee: Amazon Technologies, Inc.
    Inventor: Timothy Allen Wagner
  • Patent number: 9830449
    Abstract: Systems and methods are described for determining a location in an on-demand code execution environment to execute user-specified code. Virtual machines can be utilized to isolate different executions of code from one another. However, virtual machines require additional computing resources to implement, and may slow code executions. This disclosure enables multiple items of code, potentially associated with different users, to be executed on a single virtual machine instance or other device. Specifically, the present disclosure enables the generation of a risk profile for an item of code, which can be used to determine the security or privacy risk that would occur by executing the code on a device. By comparing the risk profiles of a given item of code to other items of code executing on a device, the on-demand code execution environment can selectively group code executions, thus increasing the efficiency of the system while maintaining security and privacy.
    Type: Grant
    Filed: December 16, 2015
    Date of Patent: November 28, 2017
    Assignee: Amazon Technologies, Inc.
    Inventor: Timothy Allen Wagner
  • Patent number: 9830193
    Abstract: A system for providing automatic management of low latency computational capacity is provided. The system may be configured to maintain a plurality of virtual machine instances. The system may be further configured to identify a trend in incoming code execution requests to execute program code on a virtual compute system, determine, based on the identified trend, that the plurality of virtual machine instances should be adjusted, and adjust the plurality of virtual machine instances based on the identified trend.
    Type: Grant
    Filed: September 30, 2014
    Date of Patent: November 28, 2017
    Assignee: Amazon Technologies, Inc.
    Inventors: Timothy Allen Wagner, Sean Philip Reque, Dylan Chandler Thomas, Derek Steven Manwaring, Bradley Nathaniel Burkett
  • Patent number: 9811363
    Abstract: Systems and methods are described for predictively managing calls to tasks on an on-demand code execution environment. Specifically, a task profile can be utilized to predict that a call to a first task will be followed by a call to a second task. Thereafter, a virtual machine can be loaded with executable code corresponding the second task, even before the call to the second task is received. If the call to the second task is received, the task can then be executed by utilizing the previously loaded executable code, thus increasing the speed at which the second task can be executed on the on-demand code execution environment.
    Type: Grant
    Filed: December 16, 2015
    Date of Patent: November 7, 2017
    Assignee: AMAZON TECHNOLOGIES, INC.
    Inventor: Timothy Allen Wagner