Feature-Group Microservice Scaling for Bottleneck-Aware Resource Allocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional container-based systems perform autoscaling at the service level, failing to account for scaling at the feature group level, leading to inefficiencies and bottlenecks in complex enterprise systems with interconnected microservices.
Innovation Solution
A collective scaling framework that evaluates performance metrics at the feature group level, dynamically adjusts resource allocation, and utilizes machine learning to optimize resource usage across interconnected microservices.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If autoscaling is performed at the service level in conventional container-based systems, then individual services can be scaled independently, but resource allocation inefficiencies and bottlenecks occur in interconnected microservice groups
Solution Approach 1:
The system segments the microservice architecture into feature groups (functional units) and individual services (executable components). This hierarchical segmentation allows scaling decisions to be made at both the feature group level (for coordinated resource allocation) and the individual service level (for fine-grained control), resolving the contradiction between scaling flexibility and resource utilization efficiency
Solution Approach 2:
The system implements feedback mechanisms that monitor performance metrics at both the service level and feature group level. This multi-level feedback enables dynamic scaling adjustments that consider both individual service needs and overall feature group performance, preventing resource allocation inefficiencies while maintaining scaling flexibility
2Reliability
If resources are allocated individually to each microservice, then service-level performance can be optimized, but bottlenecks occur in feature groups with interconnected microservices
Solution Approach 1:
The system merges resource allocation control at the feature group level while maintaining service-level performance monitoring. By combining resource management for interconnected microservices into a coordinated feature group approach, the system prevents bottlenecks caused by individual service optimization while still ensuring each service meets its performance requirements
3Speed
If dynamic scaling is implemented without feature group considerations, then rapid response to service-level demands is achieved, but resource allocation becomes inefficient across interconnected services
Solution Approach 1:
The system performs preliminary actions by pre-defining feature groups and their resource allocation constraints before scaling events occur. This preliminary structuring enables rapid scaling responses to service-level demands while automatically ensuring efficient resource allocation across interconnected services, as the feature group boundaries and resource relationships are already established
Data Source
AI summary
Methods, apparatus, and processor-readable storage media for collective scaling for computing environments are provided herein. An example method includes evaluating whether a performance metric of a microservice in a feature group of a computing environment satisfies designated performance criteria, the feature group comprising interconnected microservices executing in the computing environment. In response to the performance metric satisfying the designated performance criteria, the method includes calculating a feature queue size for the feature group based on the performance metric, and determining, based on the calculated feature queue size and usage data related to one or more processing devices of the computing environment, computing resources to be allocated to the microservices in the feature group and one or more constraints for scaling the computing resources. The determined computing resources are allocated to the microservices in the feature group, and dynamically scaled based on at least one of the one or more constraints.


