Microservices Change Management via Network Representation Analytics
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Rapid deployment of microservices and their updates in software applications poses challenges in maintaining operability, particularly when vendors push changes directly to production, leading to a lack of change history and constrained ability to roll back changes or provide analytics on microservices.
Innovation Solution
A method and system that generate process instance representations and construct microservices network representations to assess the impact of changes across multiple processes, using vectors, matrices, and tensors to efficiently track and monitor microservice changes, and generate analytics to identify the likely impact of modifications and source of errors.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If vendors push changes directly to production, then deployment speed is improved, but change history tracking and rollback capability deteriorate
Solution Approach 1:
The system performs preliminary actions by generating process instance representations and constructing microservices network representations before changes are deployed. This creates a baseline state that can be used for tracking changes and enabling rollbacks, thus preserving change history information even when deployments are rapid
Solution Approach 2:
The system implements feedback mechanisms by continuously monitoring microservice changes and generating analytics that provide information about the impact of changes. This feedback loop enables tracking of change history and supports informed rollback decisions without slowing down the deployment process
2Adaptability or versatility
If microservices are updated frequently, then adaptability is improved, but system stability deteriorates
Solution Approach 1:
The system constructs microservices network representations that model the relationships between microservices before updates are applied. This preliminary modeling allows for impact analysis and stability assessment, enabling frequent updates while maintaining system stability through informed change management
Solution Approach 2:
The system generates analytics that provide feedback on the impact of microservice updates on overall system stability. This feedback mechanism allows teams to maintain high adaptability by frequently updating microservices while using the analytics to monitor and maintain system stability
3Measurement precision
If comprehensive monitoring of microservice changes is implemented, then measurement precision is improved, but device complexity increases
Solution Approach 1:
The system segments the monitoring task by creating distinct process instance representations for different processes and a separate microservices network representation. This segmentation allows for precise tracking of changes in each component while managing overall system complexity through modular organization
Solution Approach 2:
The microservices network representation acts as an intermediary data structure that simplifies the monitoring process. Instead of directly monitoring complex microservice interactions, the system uses this intermediary representation to analyze changes, thereby improving measurement precision while reducing the apparent complexity of the monitoring system
Data Source
AI summary
Managing microservice changes and performing related analytics can include generating a plurality of process instance representations. Each process instance representation can be generated based on a corresponding process path that comprises an ordered sequence of operations that are performed by a process using multiple microservices. A microservices network representation can be constructed based on the plurality of process instance representations, each element of the microservices network corresponding to an interface between a pair of the microservices. Based on the microservices network representation, a relative frequency can be determined for each of the microservices, each relative frequency corresponding to a likelihood that a change in a microservice will affect the performance of at least one process using at least one of the microservices.


