Learned Demand Prediction for Resource-Aware Microservice Throttling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing microservice management techniques in clustered computing systems face inefficiencies due to inaccurate or static predictions about future demands, leading to excessive resource consumption or latency, particularly in dynamic and stochastic environments.

Innovation Solution

Implementing a continuously trained microservices lifecycle predictive model that distinguishes between short-term and long-term demand predictions, using unsupervised learning to dynamically adjust microservice admission and resource allocation based on actual cluster conditions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If eager loading is used to pre-load microservices for potential future calls, then service availability is improved, but resource consumption increases unnecessarily

Engineering Contradiction:
Improveservice availabilityVSAvoidresource consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system dynamically adjusts microservice loading strategy based on predicted demand. The predictive model continuously learns from historical data to determine whether to eager-load or lazy-load each microservice, making the loading strategy adaptive rather than static. This resolves the contradiction by making resource allocation dynamic - pre-loading only when prediction indicates high probability of need, and lazy-loading when prediction indicates low probability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of loading timing based on predictive model outputs. Instead of using a fixed eager-loading or lazy-loading parameter, the system adjusts the loading timing parameter dynamically based on learned demand patterns, historical data, and predicted future calls. This allows optimization of both availability and resource consumption by selecting the appropriate loading parameter for each specific case.

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If lazy loading is used to defer microservice loading until actual calls, then resource consumption is reduced, but start-up latency increases

Engineering Contradiction:
Improveresource consumptionVSAvoidstart-up latency
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The system dynamically selects between eager-loading and lazy-loading based on predictive model outputs. When the model predicts high demand probability, it switches to eager-loading to avoid latency. When prediction indicates low demand probability, it uses lazy-loading to conserve resources. This dynamic selection resolves the contradiction by adapting the loading strategy to predicted actual usage patterns.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs preliminary action (eager-loading) only when the predictive model indicates high probability of imminent use. By using historical data and learned patterns to predict future calls, the system can proactively load microservices in advance of actual calls when beneficial, thereby avoiding start-up latency without unnecessarily consuming resources for microservices that won't be used.

Inventive Principle:
Principle #10Preliminary action

3Device complexity

If static demand predictions are used for microservice management, then system complexity is reduced, but accuracy of predictions deteriorates

Engineering Contradiction:
Improvesystem complexityVSAvoidprediction accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The system uses self-service through automated machine learning models that continuously learn from historical data without requiring complex manual configuration. The predictive model automatically improves its accuracy over time by learning from patterns in the data, resolving the contradiction by providing high prediction accuracy through automated learning rather than complex static rules requiring manual maintenance.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements feedback loops where prediction outcomes are continuously monitored and used to retrain and improve the predictive model. Historical data from actual microservice usage patterns feeds back into the learning system, continuously improving prediction accuracy. This feedback mechanism maintains high accuracy without requiring increasingly complex static prediction rules.

Inventive Principle:
Principle #23Feedback

4Measurement precision

If continuous training of predictive models is implemented, then prediction accuracy is improved, but processing demands increase

Engineering Contradiction:
Improveprediction accuracyVSAvoidprocessing demands
Core Design Contradiction:
Measurement precisionVSPower

Solution Approach 1:

The system uses periodic action by training the predictive model at appropriate intervals rather than continuously in real-time. The model is trained on historical data batches periodically, balancing the need for accurate predictions with the computational cost of training. This resolves the contradiction by providing sufficiently accurate predictions through periodic training rather than exhaustive continuous training that would consume excessive processing power.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS12445530B2Microservice throttling based on learned demand predictions
Publication Date: 2025.10.14 NUTANIX INC
  • US12445530B2 patent drawing
  • US12445530B2 patent drawing
  • US12445530B2 patent drawing

AI summary

A dynamically-managed microservices platform. The microservices platform is configured to selectively accept admission of microservices and to selectively throttle microservices based on a continually-trained machine learning model. The system is configured to implement multiple microservice lifecycle strategies, where individual ones of the multiple microservice lifecycle strategies use a prediction model having long-term and short term demand predictions. One or another of the multiple microservice lifecycle strategies are invoked at different times under different conditions. Under a first set of conditions, a prediction model is used to select a first strategy to admit or throttle a microservice based upon long-term or short-term demand predictions. Under a second set of conditions, the prediction model is used to select a different strategy to admit or throttle a microservice. The prediction model is continually trained such that new sets of observations and new sets of predicted outputs are codified into the machine learning model.