Trajectory-Based Hierarchical Autoscaler for Serverless Latency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional serverless application systems face limitations in elasticity due to the time required to start additional compute nodes, leading to potential overprovisioning or latency issues when scaling to meet workload demands.
Innovation Solution
A trajectory-based hierarchical autoscaler that predicts future traffic by analyzing historical and current metrics, allowing for proactive scaling of compute nodes before reaching capacity, thereby reducing latency and optimizing resource allocation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If additional compute nodes are started to meet workload demands, then the system can handle increased traffic capacity, but the startup time of compute nodes (up to 30 minutes) causes latency and reduces elasticity
Solution Approach 1:
The system performs preliminary actions by predicting future traffic capacity needs using trajectory analysis before the compute nodes are actually needed. The autoscaler proactively provisions compute nodes based on predicted traffic trajectories, ensuring capacity is ready before demand arises, thus avoiding the latency of reactive scaling.
Solution Approach 2:
The system implements dynamic scaling by continuously monitoring traffic metrics and adjusting compute node allocation in real-time based on predicted traffic trajectories. This dynamic approach allows the system to adapt capacity provisioning to actual demand patterns, improving both responsiveness and resource utilization efficiency.
2Loss of time
If the system proactively starts additional compute nodes before capacity is reached, then latency is reduced, but resource over-allocation may occur
Solution Approach 1:
The system uses feedback mechanisms by continuously monitoring actual traffic metrics and comparing them against predicted trajectories. This feedback loop allows the autoscaler to adjust scaling decisions dynamically, provisioning compute nodes based on actual demand patterns rather than static predictions, thereby reducing both latency and resource over-allocation.
Solution Approach 2:
The system changes scaling parameters dynamically by adjusting the timing and magnitude of compute node provisioning based on predicted traffic trajectories. Instead of using fixed thresholds, the autoscaler modifies scaling parameters adaptively, provisioning nodes optimally in advance of predicted demand peaks while avoiding excessive resource allocation.
3Device complexity
If conventional reactive scaling is used, then resource allocation appears simple, but the system reaches capacity limits and cannot scale elastically
Solution Approach 1:
The system applies preliminary action by predicting future capacity requirements before they are needed, enabling proactive compute node provisioning. This approach maintains scaling control through automated policies while simultaneously improving scaling elasticity by ensuring capacity is available before demand peaks, avoiding the limitations of reactive scaling.
Data Source
AI summary
A method includes monitoring, during a first time interval, traffic associated with one or more applications executed by a cluster of compute nodes and determining, in view of the traffic associated with the one or more applications during the first time interval, that the traffic is predicted to exceed a capacity threshold of the cluster of compute nodes at an end of a second time interval. The method further includes initiating startup of an additional compute node to be added to the cluster of compute nodes for executing replicas of the one or more applications.


