Microservice Relocation for Latency Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Microservices-based applications face sub-optimal performance due to variations in underlying systems and usage patterns, leading to increased network latencies and resource over-provisioning, with manual tuning requiring significant skill and time and lacking automation to adapt to dynamic conditions.
Innovation Solution
A server system monitors traffic flows and identifies high-volume communication segments to relocate microservice instances for improved performance, automatically redeploying them to optimize communication volume and latency without manual intervention, using predefined criteria for resource allocation and affinity rules.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If manual tuning is performed based on static affinity rules, then performance tuning can be achieved, but it requires considerable skill and substantial time and effort
Solution Approach 1:
The system performs self-service by automatically monitoring traffic flows, identifying communication patterns, and relocating microservice instances without human intervention. The automated tuning system evaluates traffic data, determines optimal placements, and executes redeployment decisions autonomously, eliminating the need for manual skill and time investment while maintaining effective performance tuning.
Solution Approach 2:
The patent replaces the manual mechanical process of performance tuning with an automated computational system. Instead of human operators manually analyzing and adjusting microservice placements, the system uses automated traffic flow monitoring, pattern recognition algorithms, and intelligent decision-making to substitute the manual tuning process, thereby reducing time and skill requirements.
2Ease of manufacture
If static affinity rules are used for deployment, then initial deployment can be achieved, but it does not account for variations in traffic patterns and changes to system behaviors over time
Solution Approach 1:
The system transitions from static affinity rules to dynamic, adaptive deployment by continuously monitoring traffic flows and adjusting microservice placements in real-time. The automated system evaluates changing traffic patterns and system behaviors, dynamically relocating instances to optimal positions, thereby maintaining both deployment simplicity and adaptability to variations over time.
Solution Approach 2:
The patent implements feedback mechanisms by continuously monitoring traffic flows and using this information to adjust deployment decisions. The system collects traffic data, analyzes communication patterns, and uses this feedback to make intelligent relocation decisions, enabling adaptability to traffic variations while maintaining ease of deployment through automation.
3Reliability
If microservice instances are distributed across multiple hosts, then availability and scale are improved, but network latencies increase
Solution Approach 1:
The system applies local quality by analyzing specific traffic flow patterns and relocating microservice instances to localize high-volume communications. Instead of a uniform distribution strategy, the system identifies pairs of instances with high communication volume and places them on the same host or nearby hosts, thereby reducing network latency for critical communication paths while maintaining overall distribution for availability and scale.
Solution Approach 2:
The patent merges microservice instances that have high communication volume by relocating them to the same host. This combining strategy reduces network latency for frequently communicating services while maintaining the distributed architecture's benefits for availability and scale, as not all instances are merged and the system remains distributed across multiple hosts.
Data Source
AI summary
Method and a server system for tuning a performance of an application are disclosed. A plurality of traffic flows associated with user requests related to the application are monitored for a predefined sampling period. A traffic flow associated with a highest total volume of communication is identified from among the plurality of traffic flows. The identified traffic flow is used for selecting corresponding flow segments in a decreasing order of respective individual volume of communication. For each selected flow segment, a pair of microservice instances is identified. It is determined whether at least one microservice instance is capable of being relocated from a respective current host to another host for achieving at least one predetermined performance objective. A redeployment of the at least one microservice instance is facilitated if the at least one microservice instance is capable of being relocated from the current host to another host.


