Microservice compositions
View Patent ↗A processor may receive data regarding two or more microservices. The processor may identify, using an AI model, features of the two or more microservices. The processor may analyze the features of the two or more microservices relating to utilization contexts of the two or more microservices. The processor may classify a subset of the two or more microservices as a microservice bundle based on the analyzed features, where the microservice bundle includes two or more microservices configured to share microservice resources. The processor may output the classification of the microservice bundle.
1 . A computer-implemented method, the method comprising:
receiving, by a processor, microservice data regarding two or more microservices, wherein said microservice data includes service dependency data and microservice use data;
determining a utilization context associated with each the two or more microservices, wherein the utilization context includes a time period of utilization of each of the two or more microservices, resource needs associated with the utilization of each of the two or more microservices, a contextual background associated with the utilization of each of the two or more microservices, and a pattern of performance associated with the utilization of each of the two or more microservices;
analyzing, using an AI model, the microservice data and utilization context to determine features of the two or more microservices relating to utilization contexts of the two or more microservices;
combining a subset of the two or more microservices as a microservice bundle based on the features and a classification of the AI model, wherein the microservice bundle includes two or more microservices configured to share microservice resources, comprising:
responsive to a roll out of a change for a first microservice, determining a second microservice that will become nonoperational based on the roll out of change for the first microservice and an impact of the roll out of change on shared resources; and
unbundling the first microservice and the second microservice, wherein the first microservice and second microservice have independent resources; and allocating resources to the microservice bundle based on the combined subset of the two or more microservices.
2 . The method of claim 1 , wherein the classification of the two or more microservices as a bundle includes a time component.
3 . The method of claim 1 , wherein the AI model is trained using data regarding traffic patterns between the two or more microservices.
4 . The method of claim 1 , wherein the AI model is trained using data regarding component interactions of microservices.
5 . The method of claim 1 , wherein the AI model is trained using data regarding resource utilization of microservices.
6 . The method of claim 1 , wherein the AI model is trained using data regarding criticality of microservices.
7 . The method of claim 1 , wherein the AI model is trained using data regarding a roll out of a change in a microservice.
8 . A system comprising:
a memory; and
a processor in communication with the memory, the processor being configured to perform operations comprising:
receiving microservice data regarding two or more microservices, wherein said microservice data includes service dependency data and microservice use data;
determining a utilization context associated with each the two or more microservices, wherein the utilization context includes a time period of utilization of each of the two or more microservices, resource needs associated with the utilization of each of the two or more microservices, a contextual background associated with the utilization of each of the two or more microservices, and a pattern of performance associated with the utilization of each of the two or more microservices;
analyzing, using an AI model, the microservice data and utilization context to determine features of the two or more microservices relating to utilization contexts of the two or more microservices;
combining a subset of the two or more microservices as a microservice bundle based on the features and a classification of the AI model, wherein the microservice bundle includes two or more microservices configured to share microservice resources, comprising:
responsive to a roll out of a change for a first microservice, determining a second microservice that will become nonoperational based on the roll out of change for the first microservice and an impact of the roll out of change on shared resources; and
unbundling the first microservice and the second microservice, wherein the first microservice and second microservice have independent resources; and
allocating resources to the microservice bundle based on the combined subset of the two or more microservices.
9 . The system of claim 8 , wherein the classification of the two or more microservices as a bundle includes a time component.
10 . The system of claim 8 , wherein the AI model is trained using data regarding traffic patterns between the two or more microservices.
11 . The system of claim 8 , wherein the AI model is trained using data regarding component interactions of microservices.
12 . The system of claim 8 , wherein the AI model is trained using data regarding resource utilization of microservices.
13 . The system of claim 8 , wherein the AI model is trained using data regarding criticality of microservices.
14 . The system of claim 8 , wherein the AI model is trained using data regarding a roll out of a change in a microservice.
15 . A computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the processor to perform operations, the operations comprising:
receiving microservice data regarding two or more microservices, wherein said microservice data includes service dependency data and microservice use data;
determining a utilization context associated with each the two or more microservices, wherein the utilization context includes a time period of utilization of each of the two or more microservices, resource needs associated with the utilization of each of the two or more microservices, a contextual background associated with the utilization of each of the two or more microservices, and a pattern of performance associated with the utilization of each of the two or more microservices;
analyzing, using an AI model, the microservice data and utilization context to determine features of the two or more microservices relating to utilization contexts of the two or more microservices;
combining a subset of the two or more microservices as a microservice bundle based on the features and a classification of the AI model, wherein the microservice bundle includes two or more microservices configured to share microservice resources, comprising:
responsive to a roll out of a change for a first microservice, determining a second microservice that will become nonoperational based on the roll out of change for the first microservice and an impact of the roll out of change on shared resources; and
unbundling the first microservice and the second microservice, wherein the first microservice and second microservice have independent resources; and
allocating resources to the microservice bundle based on the combined subset of the two or more microservices.
16 . The computer program product of claim 15 , wherein the classification of the two or more microservices as a bundle includes a time component.
17 . The computer program product of claim 15 , wherein the AI model is trained using data regarding traffic patterns between the two or more microservices.
18 . The computer program product of claim 15 , wherein the AI model is trained using data regarding component interactions of microservices.
19 . The computer program product of claim 15 , wherein the AI model is trained using data regarding resource utilization of microservices.
20 . The computer program product of claim 15 , wherein the AI model is trained using data regarding criticality of microservices.