P
US11637889B2ActiveUtilityPatentIndex 63

Configuration recommendation for a microservice architecture

Assignee: RED HAT INCPriority: Apr 17, 2017Filed: Sep 9, 2019Granted: Apr 25, 2023
Est. expiryApr 17, 2037(~10.8 yrs left)· nominal 20-yr term from priority
Inventors:Vyas JayCHEN HUAMIN
H04L 12/14H04L 41/5096G06F 2009/45587H04L 67/10G06F 2009/45562H04L 41/5051G06F 9/45533G06F 9/44505G06F 9/45558G06F 2009/4557
63
PatentIndex Score
1
Cited by
26
References
14
Claims

Abstract

An example method of providing a configuration for a multitier microservice architecture includes receiving a configuration request from a user for a configuration that satisfies a set of conditions in a cloud environment. The method also includes searching a configuration data store for the configuration that matches the set of conditions. The configuration specifies a first container and a second container, the first container sends a first communication to the second container, and the second container sends a second communication responsive to the first communication to the first container. The method further includes in response to finding the configuration that matches the set of conditions: sending an allocation request to a cloud provider for allocation of the configuration in the cloud environment and providing a first identifier (ID) that identifies the first container and a second ID that identifies the second container to the user.

Claims

exact text as granted — not AI-modified
We claim: 
     
       1. A method of providing a configuration performed by a computing system, the method comprising:
 receiving a configuration request from a user for a configuration that satisfies a set of conditions in a cloud environment, a condition of the set of conditions specifying a throughput that satisfies a throughput threshold; 
 searching a configuration data store for the configuration that satisfies the set of conditions in response to receiving the configuration request, the configuration data store storing information on multitier configurations provided by one or more cloud providers, each of the multitier configurations corresponding to at least one throughput parameter; 
 providing to the user, based on searching the configuration data store, a multitier configuration that does not satisfy all of the set of conditions but corresponds to a throughput parameter which satisfies the throughput threshold, the multitier configuration that does not satisfy all of the set of conditions being determined by applying a K-nearest neighbor (KNN) model on the multitier configurations in the configuration data store, an input of the KNN model being based on one or more conditions of the set of conditions, the multitier configuration specifying a first container located at a first tier of a multitier microservice architecture and a second container located at a second tier of the multitier microservice architecture, each multitier configuration specifying one or more containers located at the first tier and one or more containers located at the second tier; and 
 for one or more multitier configurations in the cloud environment:
 retrieving a first throughput for the respective configuration; 
 populating a table with an entry specifying the respective configuration and the first throughput; and 
 storing the table in the configuration data store. 
 
 
     
     
       2. The method of  claim 1 , wherein an application is decomposed into a first microservice and a second microservice. 
     
     
       3. The method of  claim 2 , wherein a first instance of the first microservice is run in the first container, and a second instance of the second microservice is run in the second container. 
     
     
       4. The method of  claim 1 , wherein a second condition of the set of conditions specifies a payment metric that satisfies a payment threshold. 
     
     
       5. The method of  claim 4 , further comprising:
 for one or more multitier configurations in the cloud environment, each multitier configuration specifying one or more containers located at the first tier and one or more containers located at the second tier:
 retrieving a first payment metric for the respective configuration; and 
 populating the table with an entry specifying the respective configuration and the first payment metric. 
 
 
     
     
       6. The method of  claim 1 , further comprising:
 searching a first website associated with a first cloud provider of the one or more cloud providers; 
 retrieving, based on searching the first website, information on one or more first multitier configurations provided by the first cloud provider; 
 searching a second website associated with a second cloud provider of the one or more cloud providers; and 
 retrieving, based on searching the second website, information on one or more second multitier configurations provided by the second cloud provider. 
 
     
     
       7. The method of  claim 6 , further comprising:
 storing the information on the one or more first and second multitier configurations into the configuration data store. 
 
     
     
       8. The method of  claim 1 , wherein providing the multitier configuration includes allocating resources in the cloud environment in accordance with the multitier configuration. 
     
     
       9. A system for providing a configuration, comprising:
 a processor; 
 a memory coupled to the processor, wherein the memory comprises instructions that, when executed by the processor, cause the processor to: 
 store information on multitier configurations provided by one or more cloud providers, each of the multitier configurations corresponding to at least one throughput parameter; 
 receive a configuration request from a user for a configuration that satisfies a set of conditions in a cloud environment, a condition of the set of conditions specifying a throughput that satisfies a throughput threshold; 
 search the configuration data store for the configuration that satisfies the set of conditions, wherein the database management server provides, based on searching the configuration data store, a multitier configuration that does not satisfy all of the set of conditions but corresponds to a throughput parameter which satisfies the throughput threshold to the user, the multitier configuration that does not satisfy all of the set of conditions being determined by applying a K-nearest neighbor (KNN) model on the configurations in the configuration data store, an input of the KNN model being based on one or more conditions of the set of conditions, wherein the multitier configuration specifies a first container located at a first tier of a multitier microservice architecture and a second container located at a second tier of the multitier microservice architecture, each multitier configuration specifying one or more containers located at the first tier and one or more containers located at the second tier; and 
 for one or more multitier configurations in the cloud environment:
 retrieve a first throughput for the respective configuration; 
 populate a table with an entry specifying the respective configuration and the first throughput; and 
 store the table in the configuration data store. 
 
 
     
     
       10. The system of  claim 9 , wherein the first container sends a first communication to the second container, and the second container sends a second communication responsive to the first communication to the first container. 
     
     
       11. The system of  claim 9 , wherein the first container includes at least one of a compute resource, network resource, or storage resource. 
     
     
       12. The system of  claim 11 , wherein the compute resource is a central processing unit (CPU) cycle or random access memory (RAM) capacity. 
     
     
       13. The system of  claim 9 , wherein for one or more multitier configurations, the database management server obtains a payment metric for a respective multitier configuration and populates the table with an entry specifying the respective configuration and the payment metric. 
     
     
       14. A non-transitory machine-readable medium comprising a plurality of machine-readable instructions that when executed by one or more processors is adapted to cause the one or more processors to perform a method comprising:
 receiving a configuration request from a user for a configuration that satisfies a set of conditions in a cloud environment, a condition of the set of conditions specifying a throughput that satisfies a throughput threshold; 
 searching a configuration data store for the configuration that satisfies the set of conditions in response to receiving the configuration request, the configuration data store storing information on multitier configurations provided by one or more cloud providers, each of the multitier configurations corresponding to at least one throughput parameter; 
 providing to the user, based on searching the configuration data store, a multitier configuration that does not satisfy all of the set of conditions but corresponds to a throughput parameter which satisfies the throughput threshold, the multitier configuration that does not satisfy all of the set of conditions being determined by applying a K-nearest neighbor (KNN) model on the multitier configurations in the configuration data store, an input of the KNN model being based on one or more conditions of the set of conditions, the multitier configuration specifying a first container located at a first tier of a multitier microservice architecture and a second container located at a second tier of the multitier microservice architecture, each multitier configuration specifying one or more containers located at the first tier and one or more containers located at the second tier; and 
 for one or more multitier configurations in the cloud environment:
 retrieving a first throughput for the respective configuration; 
 populating a table with an entry specifying the respective configuration and the first throughput; and 
 storing the table in the configuration data store.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.