Dynamic deployment of an application based on micro-services

US10255052B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10255052-B2
Application numberUS-201715607728-A
CountryUS
Kind codeB2
Filing dateMay 30, 2017
Priority dateMay 30, 2017
Publication dateApr 9, 2019
Grant dateApr 9, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method for determining a deployment configuration of multiple micro services that interact with each other is provided. The method includes the steps of determining a metric describing an amount of communication traffic between at least two of the micro services. Based on the metric, an execution environment may be determined for at least one of the micro services. Deployment information specifying that the at least one micro service shall be deployed on the determined execution environment may be generated.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for determining a deployment configuration of a plurality of micro services that interact with each other, the method comprising: determining, by a processor of a computing system, a metric describing an amount of communication traffic between at least two of the plurality of micro services; determining, by the processor, based on the metric, an execution environment for at least one of the plurality of micro services, wherein determining the execution environment for the plurality of micro services includes: (i) determining one or more pairs of the plurality of micro services whose metric is higher than a predefined threshold, (ii) grouping the one or more pairs into at least one group, and (iii) assigning each group of the at least one group to a respective execution environment, and each of a non-grouped micro services to a respective execution environment; generating, by the processor, deployment information specifying that the at least one micro service of the plurality of micro services shall be deployed on the determined execution environment; and deploying one or more new micro services on the execution environment specified by the deployment information. 2. The method of claim 1 , wherein determining the metric comprises executing the at least two micro services, analyzing log data generated by the plurality of micro services and calculating the metric based on the analyzing. 3. The method of claim 1 , wherein determining the execution environment is further based on an amount of available communication resources for data exchange between candidate execution environments on which the plurality of micro services could be deployed. 4. The method of claim 1 , wherein the at least one group comprises one or more micro services. 5. The method of claim 1 , wherein the execution environment is selected from the group consisting of: a computing node, a virtual machine instantiated on a computing node, a software container instantiated on a computing node, a cluster of multiple computing nodes, and a data center. 6. The method of claim 1 , further comprising modifying the deployment of an already instantiated micro service based on the deployment information, the modifying including migrating the already instantiated micro service from an original execution environment, on which the already instantiated micro service is currently running, to a target execution environment specified by the deployment information. 7. The method of claim 1 , wherein the at least one micro service is a new micro service to be added to remaining micro services of the plurality of micro services, the remaining micro services having respective execution environments. 8. The method of claim 1 , wherein the plurality of micro services interact with each other through a network, further wherein the metric is selected from the group consisting of: a network bandwidth capability, a network congestion, a delay, a delay jitter, and a loss rate. 9. A computer program product, comprising a computer readable hardware storage device storing a computer readable program code, the computer readable program code comprising an algorithm that when executed by a computer processor of a computing system implements a method for determining a deployment configuration of a plurality of micro services that interact with each other, the method comprising: determining, by a processor of a computing system, a metric describing an amount of communication traffic between at least two of the plurality of micro services; determining, by the processor, based on the metric, an execution environment for at least one of the plurality of micro services, wherein determining the execution environment for the plurality of micro services includes: (i) determining one or more pairs of the plurality of micro services whose metric is higher than a predefined threshold, (ii) grouping the one or more pairs into at least one group, and (iii) assigning each group of the at least one group to a respective execution environment, and each of a non-grouped micro services to a respective execution environment; generating, by the processor, deployment information specifying that the at least one micro service of the plurality of micro services shall be deployed on the determined execution environment; and deploying one or more new micro services on the execution environment specified by the deployment information. 10. The computer program product of claim 9 , wherein determining the metric comprises executing the at least two micro services, analyzing log data generated by the plurality of micro services and calculating the metric based on the analyzing. 11. The computer program product of claim 9 , wherein determining the execution environment is further based on an amount of available communication resources for data exchange between candidate execution environments on which the plurality of micro services could be deployed. 12. The computer program product of claim 9 , wherein the at least one group comprises one or more micro services. 13. A computer system comprising: a processor; a memory device coupled to the processor; and a computer readable storage device coupled to the processor, wherein the storage device contains program code executable by the processor via the memory device to implement a method for determining a deployment configuration of a plurality of micro services that interact with each other, the method comprising: determining, by a processor of a computing system, a metric describing an amount of communication traffic between at least two of the plurality of micro services; determining, by the processor, based on the metric, an execution environment for at least one of the plurality of micro services, wherein determining the execution environment for the plurality of micro services includes: (i) determining one or more pairs of the plurality of micro services whose metric is higher than a predefined threshold, (ii) grouping the one or more pairs into at least one group, and (iii) assigning each group of the at least one group to a respective execution environment, and each of a non-grouped micro services to a respective execution environment; generating, by the processor, deployment information specifying that the at least one micro service of the plurality of micro services shall be deployed on the determined execution environment; and deploying one or more new micro services on the execution environment specified by the deployment information. 14. The computer system of claim 13 , wherein determining the metric comprises executing the at least two micro services, analyzing log data generated by the plurality of micro services and calculating the metric based on the analyzing. 15. The computer system of claim 13 , wherein determining the execution environment is further based on an amount of available communication resources for data exchange between candidate execution environments on which the plurality of micro services could be deployed. 16. The computer system of claim 13 , wherein the at least one group comprises one or more micro services.

Assignees

Inventors

Classifications

  • based on web technology, e.g. hypertext transfer protocol [HTTP] · CPC title

  • where the computing system component is a software system · CPC title

  • Jitter · CPC title

  • H04L67/10Primary

    in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46) · CPC title

  • Packet loss · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10255052B2 cover?
A method for determining a deployment configuration of multiple micro services that interact with each other is provided. The method includes the steps of determining a metric describing an amount of communication traffic between at least two of the micro services. Based on the metric, an execution environment may be determined for at least one of the micro services. Deployment information spec…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification H04L67/10. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Apr 09 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).