IP Library Granted Patent US 11,366,703
Granted Patent B2
US 11,366,703 · App. 16/778,611 · Granted Jun 21, 2022

Dynamic application management across multi-cloud computing environment

Inventors: Thinh Lam Truong Nguyen (Medford, MA); Victor Fong (Medford, MA); Xuebin He (Westwood, MA); Kenneth Durazzo (San Jose, CA); Orlando X. Nieves (Lowell, MA)
Assignee: EMC IP Holding Company LLC
G06F9/5083G06F9/45558G06F9/4843G06F2009/45595
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 11,366,703
App. No.
16/778,611
Granted
Jun 21, 2022
Kind
B2
Abstract

Techniques for dynamic application management are provided. For example, an apparatus comprises at least one processing platform configured to: execute a portion of an application program in a first virtual computing element, wherein the application program comprises at least one portion of marked code; receive a request for execution of the portion of marked code; determine, based at least in part on the portion of marked code, one or more cloud platforms on which to execute the portion of marked code; and cause the portion of marked code identified in the request to be executed on the one or more cloud platforms.

Claims (47)

1. An apparatus comprising:

at least one processing platform comprising one or more processing devices;

said at least one processing platform being configured to:

execute a portion of an application program in a first virtual computing element, wherein the application program comprises at least one portion of marked code;

receive a request for execution of the portion of marked code;

determine, based at least in part on the portion of marked code, one or more cloud platforms on which to execute the portion of marked code; and

cause the portion of marked code identified in the request to be executed on the one or more cloud platforms;

wherein causing the portion of marked code identified in the request to be executed on the one or more cloud platforms comprises, for a given one of the one or more cloud platforms:

instantiating a second virtual computing element remote from the virtual computing element at the given cloud platform;

generating a code wrapper for the given cloud platform, the code wrapper being configured for transforming input and output of the portion of marked code between the first virtual computing element and the second virtual computing element; and

providing the generated code wrapper to the given cloud platform.

2. The apparatus of claim 1 , wherein the processing platform is further configured to determine the one or more cloud platforms on which to execute the portion of marked code based on at least one policy.

3. The apparatus of claim 2 , wherein the at least one policy comprises determination criteria including one or more of compliance, cost, utilization, data gravity, and processing time.

4. The apparatus of claim 1 , wherein the processing platform is further configured to determine an optimal cloud platform among the one or more cloud platforms on which to execute the portion of marked code.

5. The apparatus of claim 1 , wherein the one or more cloud platforms comprise at least one of one or more of private cloud platforms and one or more public cloud platforms.

6. The apparatus of claim 1 , wherein the processing platform is further configured to cause the portion of marked code identified in the request to be executed by managing orchestration of the execution of the portion of the marked code within a determined one of the one or more cloud platforms.

7. The apparatus of claim 1 , wherein the processing platform is further configured to obtain credentials for a determined one of the one or more cloud platforms.

8. The apparatus of claim 1 , wherein the portion of marked code is marked by the code-wrapper.

9. The apparatus of claim 1 , wherein the portion of marked code comprises at least one application function.

10. The apparatus of claim 1 , wherein the first virtual computing element is a first container and the second virtual computing element comprises a second container remote from the first container.

11. The apparatus of claim 1 , wherein the processing platform comprises one or more of a controller, a code-marking library module, and a code-wrapper module.

12. The apparatus of claim 11 , wherein the processing platform further comprises a code generation module.

13. A method comprising:

executing a portion of an application program in a first virtual computing element, wherein the application program comprises at least one portion of marked code;

receiving a request for execution of the portion of marked code;

determining, based at least in part on the portion of marked code, one or more cloud platforms on which to execute the portion of marked code; and

causing the portion of marked code identified in the request to be executed on the one or more cloud platforms;

wherein causing the portion of marked code identified in the request to be executed on the one or more cloud platforms comprises, for a given one of the one or more cloud platforms:

instantiating a second virtual computing element remote from the virtual computing element at the given cloud platform;

generating a code wrapper for the given cloud platform, the code wrapper being configured for transforming input and output of the portion of marked code between the first virtual computing element and the second virtual computing element; and

providing the generated code wrapper to the given cloud platform;

wherein the steps are performed by at least one processing platform comprising one or more processing devices.

14. The method of claim 13 , wherein the step of determining the one or more cloud platforms on which to execute the portion of marked code is based on at least one policy.

15. The method of claim 14 , wherein the at least one policy comprises determination criteria including one or more of compliance, cost, utilization, data gravity, and processing time.

16. The method of claim 13 , further comprising determining an optimal cloud platform among the one or more cloud platforms on which to execute the portion of marked code.

17. The method of claim 13 , wherein the one or more cloud platforms comprise at least one of one or more of private cloud platforms and one or more public cloud platforms.

18. The method of claim 13 , wherein the first virtual computing element is a first container and the second virtual computing element is a second container remote from the first container.

19. An article of manufacture comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes said at least one processing device to perform steps of:

executing a portion of an application program in a first virtual computing element, wherein the application program comprises at least one portion of marked code;

receiving a request for execution of the portion of marked code;

determining, based at least in part on the portion of marked code, one or more cloud platforms on which to execute the portion of marked code; and

causing the portion of marked code identified in the request to be executed on the one or more cloud platforms;

wherein causing the portion of marked code identified in the request to be executed on the one or more cloud platforms comprises, for a given one of the one or more cloud platforms:

instantiating a second virtual computing element remote from the virtual computing element at the given cloud platform;

generating a code wrapper for the given cloud platform, the code wrapper being configured for transforming input and output of the portion of marked code between the first virtual computing element and the second virtual computing element; and

providing the generated code wrapper to the given cloud platform.

20. The article of claim 19 , wherein the step of determining the one or more cloud platforms on which to execute the portion of marked code is based on at least one policy, wherein the at least one policy comprises determination criteria including one or more of compliance, cost, utilization, data gravity, and processing time.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052216/0758) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0680 →
RELEASE OF SECURITY INTEREST AF REEL 052243 FRAME 0773 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0152 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 26, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052243/0773 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Mar 24, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052216/0758 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 21, 2020
From: NGUYEN, THINH LAM TRUONG; FONG, VICTOR; HE, XUEBIN; DURAZZO, KENNETH; NIEVES, ORLANDO X.
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 051884/0373 →