IP Library › Granted Patent US 10,938,641
Granted Patent B1
US 10,938,641 · App. 16/186,464 · Granted Mar 2, 2021

On-demand development environment

Inventors: Jonathan Andrew Fritz (Seattle, WA); Balaji Kannan (Cupertino, CA); Nivetha Purusothaman (Sunnyvale, CA); Parag Pramod Chaudhari (Sunnyvale, CA); Jalpan Randeri (Sunnyvale, CA); Yishan Yang (Redwood City, CA); Udit Mehrotra (Seattle, WA); Sneha Bharadwaj (San Jose, CA); Rui Liu (Sunnyvale, CA); Ajay Baliram Jadhav (Sunnyvale, CA); Anoop Kochummen Johnson (Fremont, CA); Konstantin Milyutin (Seattle, WA); Vignesh Rajamani (Cupertino, CA); Sachin Suresh Bhat (Seattle, WA); Anthony Virtuoso (Hawthorne, NJ); Stefano Stefani (Issaquah, WA); Rahul Pathak (Mercer Island, WA); Anurag Gupta (Atherton, CA); Ashok Kumar (Cupertino, CA)
Assignee: Amazon Technologies, Inc.
H04L41/0806G06F9/455H04L41/0856H04L41/0893H04L63/04H04L67/02G06F9/45541H04L63/0272
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,938,641
App. No.
16/186,464
Granted
Mar 2, 2021
Kind
B1
Abstract

Techniques for providing an on-demand development environment are described. A service of a provider network receives a request to launch a development environment, such as a notebook, from an electronic device. The service obtains an identification of a computing cluster hosted by the provider network. The service obtains an identification of a compute instance hosted within the provider network, the compute instance executing a software environment to host one or more development environments. The service causes the compute instance to launch a development environment. The service sends a message to configure the launched development environment to execute a computer program written in the development environment using the computing cluster. The service generates a token to secure communications between the electronic device and the development environment and sends the token to an originator of the request.

Claims (44)

1. A computer-implemented method comprising:

receiving, by a service of a provider network, a request to launch a development environment originating from an electronic device in communication with the provider network via a frontend interface;

obtaining, by the service, an identification of a computing cluster of the provider network;

obtaining, by the service, from within the provider network, an identification of a compute instance of the provider network, the compute instance executing a software environment to host one or more development environments including the requested development environment;

causing, by the service, the compute instance to launch the requested development environment;

sending, by the service, a message to configure the launched development environment to execute a computer program written in the launched development environment using the computing cluster;

generating, by the service, a token to secure communications between the electronic device and the launched development environment; and

sending, by the service, the token to the electronic device.

2. The computer-implemented method of claim 1 , wherein the compute instance includes a first logical network interface and further comprising:

causing, by the service, an attachment of a second logical network interface to the compute instance; and

sending, by the service, a message to configure the launched development environment to communicate with the computing cluster using the second logical network interface.

3. The computer-implemented method of claim 1 , wherein the launched development environment is executed within a container executing on the compute instance.

4. A computer-implemented method comprising:

receiving, by a service of a provider network, a request originating from an electronic device in communication with the provider network to launch an application;

obtaining, by the service, from within the provider network, an identification of a compute instance hosted by a first computer system of the provider network, the compute instance executing a software environment to host one or more applications including the requested application;

causing, by the service, the compute instance to launch the application, wherein the launched application is to execute a computer program using a computing resource hosted by at least a second computer system of the provider network;

generating, by the service, a token to secure communications between the electronic device and the application; and

sending, by the service, the token to the electronic device.

5. The computer-implemented method of claim 4 , wherein the compute instance includes a first logical network interface and further comprising:

causing an attachment of a second logical network interface to the compute instance; and

sending a message to configure the launched application to communicate with the computing resource using the second logical network interface.

6. The computer-implemented method of claim 4 , wherein the launched application is executed within a container executing on the compute instance.

7. The computer-implemented method of claim 6 , wherein the container includes an agent that backs up a configuration of the launched application.

8. The computer-implemented method of claim 4 , wherein the request includes an identification of the computing resource.

9. The computer-implemented method of claim 4 , wherein the compute instance is one of a plurality of pre-provisioned compute instances configured to host the application.

10. The computer-implemented method of claim 4 , wherein the compute instance is hosted by the first computer system in a virtualization environment.

11. The computer-implemented method of claim 4 , wherein the launched application is configured based on a backup associated with a previous execution of the application.

12. The computer-implemented method of claim 4 , wherein the service and the first computer system are part of a first virtual private network and the second computer system is part of a second virtual private network.

13. A system comprising:

at least a first computer system of a provider network to implement a hardware virtualization service; and

a second computer system of the provider network to implement an application manager service, the application manager service including instructions that upon execution cause the application manager service to:

receive an indication of a request to launch an application sent from an electronic device in communication with the provider network via a web browser application;

obtain, from within the provider network, an identifier of a compute instance, wherein the compute instance is one of a plurality of compute instances pre-provisioned by the hardware virtualization service and configured to host the requested application;

cause the compute instance to launch the application, wherein the launched application is to execute a computer program using a computing resource hosted by at least a third computer system of the provider network;

generate a token to secure communications between the web browser application and the application; and

send the token to the web browser application.

14. The system of claim 13 , wherein the compute instance includes a first logical network interface and wherein the instructions that upon execution further cause the application manager service to:

cause an attachment of a second logical network interface to the compute instance; and

send a message to configure the launched application to communicate with the computing resource using the second logical network interface.

15. The system of claim 13 , wherein the launched application is executed within a container executing on the compute instance.

16. The system of claim 15 , wherein the container includes an agent that backs up a configuration of the launched application.

17. The system of claim 13 , wherein the request includes an identification of the computing resource.

18. The system of claim 13 , wherein the compute instance is hosted by a fourth computer system of the provider network in a virtualization environment.

19. The system of claim 13 , wherein the launched application is configured based on a backup associated with a previous execution of the application.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2020
From: FRITZ, JONATHAN ANDREW; KANNAN, BALAJI; PURUSOTHAMAN, NIVETHA; CHAUDHARI, PARAG PRAMOD; RANDERI, JALPAN; YANG, YISHAN; MEHROTRA, UDIT; BHARADWAJ, SNEHA; LIU, RUI; JADHAV, AJAY BALIRAM; JOHNSON, ANOOP KOCHUMMEN; MILYUTIN, KONSTANTIN; RAJAMANI, VIGNESH; BHAT, SACHIN SURESH; VIRTUOSO, ANTHONY; STEFANI, STEFANO; PATHAK, RAHUL; GUPTA, ANURAG; KUMAR, ASHOK
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 054550/0281 →
Cited By (7)
US 12,229,571 US 12,395,396 US 12,455,728 US 12,474,895 US 12,494,912 US 12,536,007 US 12,650,838