IP Library › Granted Patent US 11,874,757
Granted Patent B2
US 11,874,757 · App. 16/940,865 · Granted Jan 16, 2024

Cloud infrastructure optimization

Inventors: Jonathan H. Bryant (McLean, VA); Jagadesh V. Gadiyaram (Richmond, VA); Thomas Caputo (Arlington, VA)
Assignee: Capital One Service, LLC
G06F11/3457G06F8/60G06F9/5077G06F11/3414G06F11/3692G06F11/3696H04L41/0823
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,874,757
App. No.
16/940,865
Granted
Jan 16, 2024
Kind
B2
Abstract

A processor may receive at least one test application corresponding to an application profile. The processor may simulate the at least one test application in a non-production environment for a plurality of infrastructure configurations to generate a plurality of test performance results. The processor may evaluate the plurality of test performance results to identify an optimal infrastructure configuration from among the plurality of infrastructure configurations for the application profile. The processor may apply the optimal infrastructure configuration to an application corresponding to the application profile that is deployed in a production environment.

Claims (45)

1. A method of cloud infrastructure optimization comprising:

receiving, at a processor, a plurality of synthetic applications, each corresponding to an application profile including a unique set of features, and each comprising executable code configured for simulated deployment in a non-production environment;

simulating, by the processor, each of the plurality of synthetic applications in the non-production environment, the simulating comprising executing the code using a plurality of infrastructure configurations to generate a plurality of synthetic performance results for each synthetic application, each infrastructure configuration including at least one cloud-based system used in deployment of at least one application;

receiving, at the processor, an actual application configured for deployment in a production environment;

identifying, by the processor, a matching synthetic application of the plurality of synthetic applications having a matching application profile to an application profile of the actual application;

evaluating, by the processor, the plurality of synthetic performance results associated with the matching synthetic application to identify an optimal infrastructure configuration for the application profile of the actual application; and

applying, by the processor, the optimal infrastructure configuration to the actual application that is deployed in the production environment.

2. The method of claim 1 , wherein identifying, by the processor, the matching synthetic application comprises:

identifying one or more resources associated with the matching synthetic application that correspond to one or more resource requirements of the actual application.

3. The method of claim 2 , wherein the one or more resource requirements of the actual application are based on performance tuning of at least one deployed application in the production environment.

4. The method of claim 2 , wherein the identifying is based on at least one similarity between the actual application and at least one of the plurality of synthetic performance results for the matching synthetic application.

5. The method of claim 1 , wherein the application profile defines a physical deployment and a workload requiring at least one of a plurality of infrastructure resources.

6. The method of claim 1 , further comprising:

generating, by the processor, at least one synthetic application.

7. The method of claim 1 , wherein evaluating the plurality of synthetic performance results comprises selecting an infrastructure configuration yielding a highest performance in at least one benchmark from among the plurality of infrastructure configurations as the optimal infrastructure configuration.

8. A non-transitory computer readable medium including one or more sequences of instructions that, when executed by a computing system, causes the computing system to perform operations, comprising:

identifying a plurality of synthetic applications, each corresponding to an application profile including a unique set of features, and each comprising executable code configured for simulated deployment in a non-production environment;

simulating each of the plurality of synthetic applications in the non-production environment, the simulating comprising executing the code using a plurality of infrastructure configurations to generate a plurality of synthetic performance results for each synthetic application, each infrastructure configuration including at least one cloud-based system used in deployment of at least one application;

identifying an actual application configured for deployment in a production environment;

identifying a matching synthetic application of the plurality of synthetic applications having a matching application profile to an application profile of the actual application;

evaluating the plurality of synthetic performance results associated with the matching synthetic application to identify an optimal infrastructure configuration for the application profile of the actual application; and

applying the optimal infrastructure configuration to the actual application that is deployed in the production environment.

9. The non-transitory computer readable medium of claim 8 , wherein identifying the matching synthetic application comprises:

identifying one or more resources associated with the matching synthetic application that correspond to one or more resource requirements of the actual application.

10. The non-transitory computer readable medium of claim 9 , wherein the one or more resource requirements of the actual application are based on performance tuning of at least one deployed application in the production environment.

11. The non-transitory computer readable medium of claim 9 , wherein the identifying is based on at least one similarity between the actual application and at least one of the plurality of synthetic performance results for the matching synthetic application.

12. The non-transitory computer readable medium of claim 8 , wherein the application profile defines a physical deployment and a workload requiring at least one of a plurality of infrastructure resources.

13. The non-transitory computer readable medium of claim 8 , further comprising:

generating at least one synthetic application.

14. The non-transitory computer readable medium of claim 8 , wherein evaluating the plurality of synthetic performance results comprises selecting an infrastructure configuration yielding a highest performance in at least one benchmark from among the plurality of infrastructure configurations as the optimal infrastructure configuration.

15. A system, comprising:

a processor; and

a memory having programming instructions stored thereon, which, when executed by the processor, performs operations comprising:

identifying a plurality of synthetic applications, each corresponding to an application profile including a unique set of features, and each comprising executable code configured for simulated deployment in a non-production environment;

simulating each of the plurality of synthetic applications in the non-production environment, the simulating comprising executing the code using a plurality of infrastructure configurations to generate a plurality of synthetic performance results for each synthetic application, each infrastructure configuration including at least one cloud-based system used in deployment of at least one application;

identifying an actual application configured for deployment in a production environment;

identifying a matching synthetic application of the plurality of synthetic applications having a matching application profile to an application profile of the actual application;

evaluating the plurality of synthetic performance results associated with the matching synthetic application to identify an optimal infrastructure configuration for the application profile of the actual application; and

applying the optimal infrastructure configuration to the actual application that is deployed in the production environment.

16. The system of claim 15 , wherein identifying the matching synthetic application comprises:

identifying one or more resources associated with the matching synthetic application that correspond to one or more resource requirements of the actual application.

17. The system of claim 16 , wherein the one or more resource requirements of the actual application are based on performance tuning of at least one deployed application in the production environment.

18. The system of claim 16 , wherein the identifying is based on at least one similarity between the actual application and at least one of the plurality of synthetic performance results for the matching synthetic application.

19. The system of claim 15 , wherein the application profile defines a physical deployment and a workload requiring at least one of a plurality of infrastructure resources.

20. The system of claim 15 , wherein evaluating the plurality of synthetic performance results comprises selecting an infrastructure configuration yielding a highest performance in at least one benchmark from among the plurality of infrastructure configurations as the optimal infrastructure configuration.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 28, 2020
From: BRYANT, JONATHAN H.; GADIYARAM, JAGADESH V.; CAPUTO, THOMAS
To: CAPITAL ONE SERVICES, LLC
Reel/Frame 053331/0562 →
Continuity (2)
Continuation 16150825 · Oct 3, 2018
Related Publication 20200364131A1 · Nov 19, 2020