US2021208956A1PendingUtilityA1

Automated identification of service boundaries based on system focus optimization using distributed tracing data

Assignee: CAPITAL ONE SERVICES LLCPriority: Dec 2, 2019Filed: Oct 28, 2020Published: Jul 8, 2021
Est. expiryDec 2, 2039(~13.3 yrs left)· nominal 20-yr term from priority
Inventors:Noriaki Tatsumi
H04L 67/01H04L 67/02H04L 67/56H04L 67/63H04L 67/51H04L 67/60G06F 9/547H04L 67/34H04L 67/147H04L 12/66G06F 9/546
53
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A method for microservices architecture optimization is disclosed. The method includes receiving a first application request message at a gateway service, and generating a first client request message, by the gateway service, based on the first application request message. The first client request message may have a customized header comprising an identification of the gateway service. The method may include forwarding the first client request message from the gateway service to a first service of a plurality of services, and the first service updating the customized header of the first client request message to add an identification of the first service. The method includes generating, at the first service, a first client response message comprising the customized header, and generating, at the gateway service, a deployment scheme for a subset of services of the plurality of services based on the customized header of the first client response message. The deployment scheme may utilize an application specific criteria.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A method for microservices architecture optimization, the method comprising:
 receiving, by a gateway service, a plurality of application request messages, each application request message having a type;   generating, by the gateway service, a client request message for each of the plurality of the application request messages;   forwarding, by the gateway service, each of the client request messages to a respective service of a plurality of services associated with each of the client request messages;   identifying, by the gateway service, shared characteristics of the plurality of services based on a value of a header added in each of the client request messages; and   generating, at the gateway service, a scheme for deploying the plurality of services together based on the identified shared characteristics of the plurality of services.   
     
     
         2 . The method of  claim 1 , wherein generating the scheme for deploying the plurality of services together comprises:
 determining the plurality of services are commonly invoked by a first application request message having a first type and a second application request message having a second type, wherein the first type is different from the second type.   
     
     
         3 . The method of  claim 1 , wherein generating the scheme for deploying the plurality of service together comprises:
 determining a message load corresponding to a first type of an application request message of the plurality of application request messages and a second type of an application request message of the plurality of application request messages.   
     
     
         4 . The method of  claim 3 , wherein the message load corresponding to the first type and the second type is measured over a configurable time period. 
     
     
         5 . The method of  claim 1 , further comprising:
 identifying at least one endpoint of a plurality of endpoints corresponding to a service of the plurality of services that shares no common resource with other endpoints of the plurality of endpoints; and   generating, at the gateway service, a recommendation that the at least one endpoint is decoupled from the other endpoints of the plurality of endpoints.   
     
     
         6 . The method of  claim 1 , wherein generating the scheme for deploying the plurality of service together comprises:
 generating a recommendation based on specification of a server, the specification including requirements of at least one of a central processing unit (CPU), and a memory.   
     
     
         7 . The method of  claim 1 , wherein a message structure of a first application request message of the plurality of application request messages is different from a message structure of a second application request message of the plurality of application request messages. 
     
     
         8 . A system, comprising:
 a memory for storing operations; and   one or more processors, communicatively coupled to the memory, configured to perform the operations comprising:
 receiving, by a gateway service, a plurality of application request messages, each application request message having a type; 
 generating, by the gateway service, a client request message for each of the plurality of the application request messages; 
 forwarding, by the gateway service, each of the client request messages to a respective service of a plurality of services associated with each of the client request messages; 
 identifying, by the gateway service, shared characteristics of the plurality of services based on a value of a header added in each of the client request messages; and 
 generating, at the gateway service, a scheme for deploying the plurality of services together based on the identified shared characteristics of the plurality of services. 
   
     
     
         9 . The system of  claim 8 , wherein for generating the scheme for deploying the plurality of service together, the operations further comprise:
 determining the plurality of services are commonly invoked by a first application request message having a first type and a second application request message having a second type, wherein the first type is different from the second type.   
     
     
         10 . The system of  claim 8 , wherein for generating the scheme for deploying the plurality of service together, the operations further comprise:
 determining a message load corresponding to a first type of an application request message of the plurality of application request messages and a second type of an application request message of the plurality of application request messages.   
     
     
         11 . The system of  claim 10 , wherein the message load corresponding to the first type and the second type is measured over a configurable time period. 
     
     
         12 . The system of  claim 8 , wherein the operations further comprise:
 identifying at least one endpoint of a plurality of endpoints corresponding to a service of the plurality of services that shares no common resource with other endpoints of the plurality of endpoints; and   generating a recommendation that the at least one endpoint is decoupled from the other endpoints of the plurality of endpoints.   
     
     
         13 . The system of  claim 8 , wherein for generating the scheme for deploying the plurality of service together, the operations further comprise:
 generating a recommendation based on specification of a server, the specification including requirements of at least one of a central processing unit (CPU), and a memory.   
     
     
         14 . The system of  claim 8 , wherein a message structure of a first application request message of the plurality of application request messages is different from a message structure of a second application request message of the plurality of application request messages. 
     
     
         15 . A non-transitory, tangible computer-readable device having instructions stored thereon that, when executed by at least one computing device, causes the at least one computing device to perform operations, comprising:
 receiving, by a gateway service, a plurality of application request messages, each application request message having a type;   generating, by the gateway service, a client request message for each of the plurality of the application request messages;   forwarding, by the gateway service, each of the client request messages to a respective service of a plurality of services associated with each of the client request messages;   identifying, by the gateway service, shared characteristics of the plurality of services based on a value of a header added in each of the client request messages; and   generating, at the gateway service, a scheme for deploying the plurality of services together based on the identified shared characteristics of the plurality of services.   
     
     
         16 . The non-transitory, tangible computer-readable device of  claim 15 , wherein for generating the scheme for deploying the plurality of service together, the operations further comprise:
 determining the plurality of services are commonly invoked by a first application request message having a first type and a second application request message having a second type, wherein the first type is different from the second type.   
     
     
         17 . The non-transitory, tangible computer-readable device of  claim 15 , wherein for generating the scheme for deploying the plurality of service together, the operations further comprise:
 determining a message load corresponding to a first type of an application request message of the plurality of application request messages and a second type of an application request message of the plurality of application request messages.   
     
     
         18 . The non-transitory, tangible computer-readable device of  claim 17 , wherein the message load corresponding to the first type and the second type is measured over a configurable time period. 
     
     
         19 . The non-transitory, tangible computer-readable device of  claim 15 , wherein the operations further comprise:
 identifying at least one endpoint of a plurality of endpoints corresponding to a service of the plurality of services that shares no common resource with other endpoints of the plurality of endpoints; and   generating a recommendation that the at least one endpoint is decoupled from the other endpoints of the plurality of endpoints.   
     
     
         20 . The non-transitory, tangible computer-readable device of  claim 15 , wherein for generating the scheme for deploying the plurality of service together, the operations further comprise:
 generating a recommendation based on specification of a server, the specification including requirements of at least one of a central processing unit (CPU), and a memory.

Join the waitlist — get patent alerts

Track US2021208956A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.