On-demand Code Execution Resource Scaling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional on-demand code execution systems struggle to efficiently manage long-running background processes alongside synchronous operations, often requiring separate execution environments and reducing the deployment and management benefits of using such systems.

Innovation Solution

The system provisions a baseline quantity of computing resources that can be dynamically scaled up to meet the performance requirements of synchronous processes, while maintaining a minimum level of resources for continuous or asynchronous background processes, allowing for efficient execution of both types of operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If separate execution environments are used for synchronous and asynchronous processes, then each process type can be optimized independently, but device complexity and deployment overhead increase

Engineering Contradiction:
Improveprocess execution optimizationVSAvoidexecution environment complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges synchronous and asynchronous process execution into a single execution environment. The system provisions computing resources that can be dynamically scaled to handle both process types simultaneously, eliminating the need for separate execution environments while maintaining optimization for each process type through dynamic resource allocation.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The execution environment is designed to be universal, capable of handling both synchronous request-response processes and asynchronous long-running background processes. The system provisions baseline computing resources that can be dynamically scaled up to meet synchronous performance requirements while maintaining capacity for asynchronous operations, making the environment multi-functional.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Productivity

If computing resources are dynamically scaled up for synchronous processes, then synchronous performance requirements are met, but resource management complexity increases

Engineering Contradiction:
Improvesynchronous process performanceVSAvoidresource management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system implements dynamic resource scaling where computing resources are automatically adjusted based on workload demands. Baseline resources are provisioned for asynchronous operations, and resources can be scaled up when synchronous processes require additional capacity, then scaled back down when demand decreases, creating a flexible and adaptive resource management system.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes resource allocation parameters dynamically based on process type and demand. Computing resources are provisioned at a baseline level and can be scaled up to meet synchronous performance requirements, with the scaling parameter adjusted according to real-time workload conditions, allowing efficient resource utilization without manual intervention.

Inventive Principle:
Principle #35Parameter changes

3Duration of action of stationary object

If baseline computing resources are provisioned for background processes, then asynchronous operations can execute continuously, but resource utilization efficiency decreases when synchronous demand is low

Engineering Contradiction:
Improvebackground process continuityVSAvoidcomputing resource waste
Core Design Contradiction:
Duration of action of stationary objectVSLoss of energy

Solution Approach 1:

The system implements periodic resource allocation adjustments where baseline resources are maintained for asynchronous operations, but additional resources are allocated periodically when synchronous demand arises and released when demand subsides. This periodic scaling allows continuous background process execution while minimizing resource waste during low-demand periods.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS20250110800A1On-demand code execution computing resource management
Publication Date: 2025.04.03 AMAZON TECH INC
  • US20250110800A1 patent drawing
  • US20250110800A1 patent drawing
  • US20250110800A1 patent drawing

AI summary

Systems and methods are provided for an on-demand code execution service comprising a set of computing devices for on-demand execution of function code while continuing to facilitate executing long-running background processes. A subset of resources may be initialized based, at least in part, on the application configuration data including at least a request-response process, a background process, and a lesser set of computing resources for the background process. After the execution of the background process has begun, a first request may be received. The on-demand code execution service may increase computing resources to a larger set of computing resources to generate a first response to the first request. The first response may then be provided to an external set of computing resources. After determining that the queue contains no additional requests, the on-demand code execution service may decrease the level of computing resources to the lesser set of computing resources.