Microservice Resource Allocation Using Parallel ADMM for Response Time
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing resource allocation algorithms for large microservice ecosystems struggle to minimize the average completion time of applications due to complex and dynamic dependencies between services, leading to inefficient resource utilization.
Innovation Solution
A resource allocation method that constructs a target optimization model with sub-optimization models for each resource, using the Alternating Direction Method of Multipliers (ADMM) to solve these models in parallel, constraining resource allocation with group norms and matrix vector multiplication to optimize average response time.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If existing resource allocation algorithms are used to schedule according to weights or priorities, then the system can maintain simple scheduling logic, but the average completion time of applications cannot be minimized
Solution Approach 1:
The patent segments the resource allocation problem into multiple independent sub-optimization models, one for each resource type. Each sub-model handles a specific resource (CPU, memory, GPU) separately, allowing parallel computation and reducing the complexity of solving the overall optimization problem while minimizing average completion time.
Solution Approach 2:
The patent transforms the resource allocation problem into an optimization problem with multiple dimensions by introducing decision variables for resource allocation amounts and environmental variables for system state. This dimensional transformation enables the use of advanced optimization algorithms like ADMM to achieve better completion times.
2Productivity
If resource allocation is optimized to minimize average response time, then application performance improves, but the complexity of modeling and computation increases
Solution Approach 1:
The patent divides the complex resource allocation optimization into multiple simpler sub-optimization models, one for each resource type. Each sub-model has its own decision variables and constraints, making them easier to solve independently through parallel computation, thus improving allocation efficiency without excessive complexity.
Solution Approach 2:
The patent employs dynamic optimization by continuously updating environmental variables to reflect current system state and using iterative algorithms like ADMM. This dynamic approach allows the system to adapt to changing conditions and optimize resource allocation efficiency in real-time.
3Measurement precision
If a comprehensive optimization model is used to minimize average response time, then allocation accuracy improves, but the computational time and processing load increase
Solution Approach 1:
The patent segments the optimization computation into parallel sub-tasks, one for each resource type. This segmentation allows simultaneous computation of optimal allocations for different resources, maintaining high accuracy in response time optimization while significantly reducing total computational time through parallel processing.
Solution Approach 2:
The patent uses partial optimization by focusing computational effort on the most critical resource allocation decisions rather than attempting to optimize every aspect simultaneously. This selective optimization approach maintains sufficient accuracy while reducing computational time requirements.
Data Source
AI summary
A resource allocation method for allocating resources to respective applications based on user request information in a microservice system, which includes: acquiring a target optimization model that includes a plurality of sub-optimization models in one-to-one correspondence to resources; an optimization goal of each of the plurality of sub-optimization models being to minimize a sum of average response time of all of applications on a corresponding resource; variables of the sub-optimization model including a decision variable and an environmental variable; acquiring environmental parameters currently corresponding to the microservice system; and solving respective sub-optimization models in parallel based on the environmental parameters according to ADMM to obtain optimal solutions corresponding to respective decision variables and generate a corresponding resource allocation strategy. By solving the respective sub-optimization models in parallel, an optimal allocation result corresponding to respective resources can be obtained and the average response time of the respective applications are optimized.

