Adaptive Throttling for Request Rate Oscillation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current systems face oscillatory behavior between overloaded and non-overloaded states due to naive throttling approaches, which fail to account for client-specific quality of service expectations and varying request rates, leading to inefficient resource management and potential system failures.

Innovation Solution

Adaptive throttling techniques that aggressively increase and then gradually reduce throttle multipliers to maintain an ideal request rate, based on client-specific quality of service expectations, to prevent oscillations and ensure consistent service delivery.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If naive throttling is applied to protect from overload, then system overload is prevented, but oscillatory behavior occurs between overloaded and non-overloaded states

Engineering Contradiction:
Improvesystem overload protectionVSAvoidsystem state stability
Core Design Contradiction:
ReliabilityVSStability of the object's composition

Solution Approach 1:

The system performs preliminary actions by maintaining a moving average of request rates and pre-calculating threshold values before actual throttling decisions are needed. This allows the system to anticipate overload conditions and respond proactively, smoothing out oscillations by basing decisions on historical data rather than instantaneous rates.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The throttling threshold is made dynamic through continuous adjustment based on the moving average request rate. The threshold adapts to changing system conditions and client behavior patterns, transitioning from static to dynamic control that responds to real-time system state while maintaining stability through gradual adjustments.

Inventive Principle:
Principle #15Dynamics

2Device complexity

If a fixed global threshold is used for request rate comparison, then simple overload detection is achieved, but client-specific quality of service expectations are not accounted for

Engineering Contradiction:
Improveoverload detection simplicityVSAvoidclient-specific QoS adaptation
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent applies local quality by customizing threshold values for different clients based on their individual quality of service expectations and historical request patterns. Each client receives personalized threshold treatment rather than uniform global thresholds, allowing the system to adapt to varying client needs while maintaining manageable complexity through automated client profiling.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system implements feedback mechanisms by continuously monitoring actual request rates against client-specific thresholds and adjusting thresholds based on observed behavior patterns. This closed-loop approach allows the system to learn from historical data and refine client-specific thresholds, balancing simplicity with adaptability.

Inventive Principle:
Principle #23Feedback

3Productivity

If throttling is removed once system exits overloaded state, then service delivery is improved, but system returns to overloaded state causing oscillation

Engineering Contradiction:
Improveservice delivery rateVSAvoidoverload prevention stability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system maintains a moving average of request rates that continues to accumulate data even after the system exits overloaded state. This preliminary accumulation of historical data allows the system to predict future overload conditions before they occur, enabling proactive threshold adjustment that prevents oscillation while maintaining high service delivery rates.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system provides beforehand cushioning by using the moving average to create a buffer zone in threshold detection. This cushioning effect smooths out rapid fluctuations in request rates and prevents the system from over-reacting to temporary spikes, thereby preventing oscillation between overloaded and non-overloaded states while maintaining productivity.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

Data Source

PatentUS8429282B1System and method for avoiding system overload by maintaining an ideal request rate
Publication Date: 2013.04.23 AMAZON TECH INC
  • US8429282B1 patent drawing
  • US8429282B1 patent drawing
  • US8429282B1 patent drawing

AI summary

A computer system that provides services to clients may adaptively throttle incoming service requests in order to reach and then maintain operation at an ideal request rate. An ideal request rate may be a maximum rate at which incoming service requests can be serviced such that client-specified quality of service (QoS) expectations are met for most or all incoming service requests, or a rate within a range of rates defined by that maximum rate. Determining whether the system is operating at an ideal request rate may include determining the minimum difference between the expected and actual QoS for a group of recently serviced requests. The system may gradually modify a throttle multiplier value in order to reach or maintain an ideal request rate. Maintaining operation at an ideal request rate may allow the system to avoid entering an overloaded state, and/or oscillating between an overloaded state and a non-overloaded state.