Request Preemption for Application Overload Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing request throttling mechanisms are inefficient in resolving application overload situations due to their focus on limiting new requests, which can lead to prolonged recovery times when long-running requests are executing, as they do not address the ongoing resource consumption and service level breaches caused by these requests.

Innovation Solution

Implement a selective preemption approach that identifies and suspends or terminates executing requests based on criteria such as utility measure, residual lifetime, and executing time, allowing for prioritization and rescheduling to alleviate overload conditions by targeting resource-intensive and long-running requests.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If request throttling is used to limit new requests, then the application overload situation is mitigated, but the recovery time is prolonged due to long-running requests continuing to execute

Engineering Contradiction:
Improveservice level agreement complianceVSAvoidrecovery time from overload
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary identification of long-running requests before they complete execution. By detecting requests that exceed a threshold execution time and preempting them early, the system prevents prolonged resource consumption and accelerates overload recovery, rather than waiting for natural completion of all requests

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Instead of only limiting new requests (traditional throttling approach), the invention inverts the approach by targeting and preempting already-executing requests. This reverse strategy directly addresses the root cause of prolonged recovery by removing resource-intensive long-running requests from the system

Inventive Principle:
Principle #13The other way round (Inversion)

2Use of energy by moving object

If all new requests are throttled, then resource consumption is reduced, but system productivity decreases due to extended overload duration

Engineering Contradiction:
Improveresource consumptionVSAvoidrequest processing throughput
Core Design Contradiction:
Use of energy by moving objectVSProductivity

Solution Approach 1:

The system applies differentiated treatment to different requests based on their characteristics. Instead of uniformly throttling all new requests, it selectively preempts specific long-running requests that consume excessive resources, while allowing other requests to proceed normally. This localized approach preserves productivity by maintaining throughput for non-problematic requests

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8677375B2Selecting executing requests to preempt
Publication Date: 2014.03.18 HEWLETT PACKARD ENTERPRISE DEV LP
  • US8677375B2 patent drawing
  • US8677375B2 patent drawing
  • US8677375B2 patent drawing

AI summary

Systems, methods, and computer-readable and executable instructions are provided for selecting executing requests to preempt. Selecting executing requests to preempt can include determining whether an application is in an overload condition. Selecting executing requests can also include in response to determining the application is in an overload condition, identifying each request that is being executed by the application. Selecting executing requests can also include determining a value for each request that is executing. Furthermore, selecting executing requests can also include selecting executing requests to preempt based on the values for the requests.