Predictive Ephemeral Container Allocation for Cloud Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In cloud computing environments, the time needed to provision ephemeral containers for client-provided code introduces system latency, and the limited number of active containers can lead to resource starvation for other clients, especially during bursts of requests.

Innovation Solution

A predictive allocation system that manages a virtual pool of containers, using historical and real-time data models to prioritize container allocation based on expected request patterns, thereby optimizing performance and reducing bootstrap time.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If ephemeral containers are provisioned on-demand for client-provided code, then security isolation is improved, but system latency increases due to provisioning time

Engineering Contradiction:
Improvesecurity isolationVSAvoidsystem latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system pre-provisions ephemeral containers before client requests arrive, storing them in a pool of available containers. When a request comes in, a pre-provisioned container is immediately allocated rather than creating a new one, eliminating provisioning delay while maintaining security isolation through ephemeral container architecture

Inventive Principle:
Principle #10Preliminary action

2Productivity

If the number of active ephemeral containers is limited, then resource management is improved, but resource starvation occurs for other clients during request bursts

Engineering Contradiction:
Improveresource management efficiencyVSAvoidresource availability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system proactively pre-provisions containers and maintains a pool of ready-to-use containers before demand arises. This preliminary action ensures that when request bursts occur, pre-provisioned containers are immediately available for allocation, preventing resource starvation while maintaining efficient resource management through controlled pool sizing

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system monitors container usage patterns and request queues, dynamically adjusting the container pool size based on observed demand. When the queue grows or usage patterns indicate upcoming demand, the system provisions additional containers to the pool, ensuring resource availability while preventing starvation during bursts

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11977761B2Predictive allocation of ephemeral containers for cloud computing services
Publication Date: 2024.05.07 SALESFORCE INC
  • US11977761B2 patent drawing
  • US11977761B2 patent drawing
  • US11977761B2 patent drawing

AI summary

Examples include maintaining a virtual pool of containers; receiving a request from a client for one of a plurality of services to performed; when the request includes client code, determining whether the request belongs to regular or priority queue based on two models; adding the request to an appropriate shard in the queue; getting the request from the selected one of the plurality of queues and assigning a container for the request from the virtual pool of containers, the client code to be executed in the container; and after the client code is executed in the container, deleting the container from the virtual pool.