Distributed Computing Instance Provisioning via Software Cache Preloading

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems face slow boot-up times when creating new instances in distributed computing systems due to the need to load large numbers of software routines, which can cause delays and timeouts during demand spikes.

Innovation Solution

A method and system that obtains a list of identifiers for the most recently or frequently used software routines from a currently running instance and loads these into a new instance's cache, leveraging a multi-level cache hierarchy to accelerate provisioning.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all software routines are loaded into new instances, then completeness of software deployment is improved, but provisioning time increases

Engineering Contradiction:
Improvesoftware deployment completenessVSAvoidprovisioning time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary action by pre-loading the most recently used software routines into the new instance's cache before the instance is fully provisioned. This allows the instance to operate with essential software immediately while remaining routines are loaded asynchronously, resolving the contradiction between complete deployment and fast provisioning.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The software routines are segmented into two groups: (1) most recently used routines that are pre-loaded into cache, and (2) other routines that are loaded asynchronously. This segmentation allows the system to provide immediate functionality while maintaining eventual completeness, addressing the time-completeness tradeoff.

Inventive Principle:
Principle #1Segmentation

2Quantity of substance

If software routines are loaded sequentially, then memory usage is reduced, but provisioning speed decreases

Engineering Contradiction:
Improvememory usageVSAvoidprovisioning speed
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The system performs preliminary action by pre-loading the most recently used software routines into the new instance's cache before the instance is fully provisioned. This allows the instance to operate with essential software immediately while remaining routines are loaded asynchronously, resolving the contradiction between complete deployment and fast provisioning.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The provisioning process continues in the background after the instance is provisioned, with software routines being loaded asynchronously from the cache. This continuous action maintains high provisioning speed while managing memory usage efficiently, as the cache is reused across multiple provisioning cycles.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS20250251977A1Computer System and Computer-Implemented Method for Provisioning New Instances in Distributed Computing Systems
Publication Date: 2025.08.07 SHOPIFY INC
  • US20250251977A1 patent drawing
  • US20250251977A1 patent drawing
  • US20250251977A1 patent drawing

AI summary

A computer system and computer-implemented method are provided for provisioning new instances in distributed computing systems. The method includes, responsive to a request to add a new instance in a distributed computing system having a plurality of instances, obtaining a list of identifiers from a currently running instance in the distributed computing system, the identifiers corresponding to software routines cached by the currently running instance; and loading, based on the identifiers, the software routines cached by the currently running instance into a cache on the new instance.