Dynamic deployment of an application based on micro-services
AssigneeInternational Business Machines Corporation
InventorsAntonio Bagarolo, Antonio Di Cocco, Claudio Marinelli, Luigi Pichetti
Life of this patent
Estimating the term…
Abstract
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.
Claims16
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.
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.
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.
Dependencies are inferred from the claim text.