Cloud App Update via Delegator Socket Interception

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Updating applications in a cloud computing environment often results in significant downtime and resource overhead, as existing methods require creating duplicate deployments, which is costly and impractical.

Innovation Solution

Implementing a 'Blue-Green' update technique using a listening delegator process that intercepts socket creation calls and swaps file descriptors to allow seamless configuration updates without downtime, utilizing Linux mechanisms for file descriptor transfer and hot reloading within the same deployment.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If another copy of the application is executed in another deployment to avoid downtime, then service availability is maintained, but resource allocation doubles and costs increase substantially

Engineering Contradiction:
Improveservice availabilityVSAvoidresource allocation
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent merges the listener functionality into a single shared deployment by using a delegator process that can dynamically forward connections to either the original or additional application instance. This eliminates the need for separate deployments, maintaining service availability while using the same resource allocation.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The delegator process serves multiple functions: it acts as a listener for incoming connections, dynamically routes traffic to appropriate application instances, and manages the transition between original and updated application versions. This multi-functional approach allows single deployment to provide redundancy and zero-downtime updates.

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

2Reliability

If another copy of the application is executed in another deployment to avoid downtime, then service continuity is maintained, but the time to create additional deployment imposes overhead

Engineering Contradiction:
Improveservice continuityVSAvoiddeployment creation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The delegator process is created in advance within the existing deployment and is ready to immediately forward connections. When updates are needed, the system can quickly switch between instances without the overhead of creating new deployments, as the infrastructure is already in place.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically switches between the original and additional application instances through the delegator process. This dynamic routing allows seamless updates by redirecting traffic from the original instance to the additional instance without requiring deployment creation or stopping service.

Inventive Principle:
Principle #15Dynamics

3Manufacturing precision

If the application is taken offline during update, then update accuracy is ensured, but downtime occurs which is unacceptable to customers

Engineering Contradiction:
Improveupdate accuracyVSAvoiddowntime
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The delegator process acts as an intermediary between incoming connections and the application instances. It allows the original application to be updated while continuously forwarding connections to either the original or additional instance, ensuring update accuracy is applied correctly while maintaining service availability without downtime.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system maintains continuous service operation during updates by keeping the delegator process active and capable of forwarding connections to either instance. The update process applies configuration changes accurately while the delegator ensures uninterrupted service by routing traffic appropriately throughout the transition.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS11157266B2Cloud application update with reduced downtime
Publication Date: 2021.10.26 SAP SE
  • US11157266B2 patent drawing
  • US11157266B2 patent drawing
  • US11157266B2 patent drawing

AI summary

An updater platform may create a listening delegator process, associated with a listener file descriptor, within a deployment (without implementing an accept protocol). The platform may execute an original instance of an application process within the deployment and intercept a socket creation call from the original instance of the application process and replace it with the listener file descriptor. As a result, incoming connection requests are received by the listening delegator process and forwarded to the original instance of the application process. The platform may then determine that a configuration update is to be made to the application process and start an additional instance of the application process, with the updated configuration, within the deployment, such that incoming connection requests are received by the listening delegator process and forwarded to the additional instance of the application process. The platform may then switch off the original instance of the application process.