Multi-Cloud Deployment Controllers for Concurrent Service Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for managing deployment of PaaS applications across multiple service clouds and data centers are inefficient, requiring manual intervention and resulting in slow serial deployments, potential user errors, and lack of audit trails for staging and launching applications.

Innovation Solution

A system and method for staging and deploying applications to multiple service clouds spanning multiple data centers, involving a workstation that receives and stages deployable installations, specifies deployment launch, and uses deployment controllers to select, install, and remap API URLs, while inventorying dependencies and reporting completion, enabling asynchronous and concurrent deployments.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If manual deployment methods are used for PaaS applications across multiple service clouds, then deployment can be performed with simple tools, but deployment speed is slow and user errors occur frequently

Engineering Contradiction:
Improvedeployment speedVSAvoiduser error rate
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The deployment system performs self-service through automated controllers that independently manage deployment tasks across multiple service clouds. The system automatically stages deployable installations, selects appropriate versions, installs applications, remaps API URLs, and inventories dependencies without requiring manual intervention at each step, thereby eliminating user errors and accelerating deployment.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The deployment system implements comprehensive feedback mechanisms through audit trails that record all deployment activities. The system provides real-time status reporting on deployment progress, completion confirmation, and error detection, allowing the automated controllers to adjust and correct deployment operations dynamically across multiple service clouds.

Inventive Principle:
Principle #23Feedback

2Loss of time

If serial deployment is used for applications across multiple data centers, then deployment process is simple to manage, but total deployment time is excessive

Engineering Contradiction:
Improvetotal deployment timeVSAvoiddeployment process complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The deployment process is segmented into distinct independent tasks that can be executed concurrently: staging deployable installations, selecting latest versions, installing applications, remapping API URLs, and inventoring dependencies. Each service cloud receives and executes its own segment of the deployment process independently, enabling parallel execution across multiple data centers and dramatically reducing total deployment time.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by pre-staging deployable installations in local storage at each data center before actual deployment is initiated. This preliminary preparation allows the deployment controllers to immediately begin installation and configuration tasks without waiting for file transfers, significantly reducing the critical path of the deployment process.

Inventive Principle:
Principle #10Preliminary action

3Manufacturing precision

If automated deployment system is implemented across multiple service clouds, then deployment consistency is improved, but system complexity increases

Engineering Contradiction:
Improvedeployment consistencyVSAvoidsystem architecture complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The deployment system implements universal multi-functional controllers that can stage, select, install, remap, and inventory across different service clouds and data centers using a single unified interface. The same automated controller handles diverse deployment tasks (major releases, minor updates, hot fixes) consistently across the entire multi-cloud infrastructure, ensuring deployment precision without requiring separate specialized systems for each function.

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

4Productivity

If concurrent asynchronous deployment is launched to multiple service clouds, then deployment efficiency is maximized, but coordination complexity increases

Engineering Contradiction:
Improvedeployment efficiencyVSAvoidcoordination overhead
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system employs intermediary deployment controllers that act as mediators between the central deployment initiation and the distributed service clouds. These controllers receive deployment launch specifications, coordinate the asynchronous concurrent execution across multiple service clouds, manage local storage staging, and aggregate completion status back to the initiation point, thereby enabling high-efficiency parallel deployment without overwhelming coordination complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10778810B2Staging and deployment to multiple service clouds
Publication Date: 2020.09.15 SALESFORCE INC
  • US10778810B2 patent drawing
  • US10778810B2 patent drawing
  • US10778810B2 patent drawing

AI summary

The technology disclosed describes staging and deploying major releases, updates and hot fixes to service clouds spanning data centers that include hardware stacks. User-specified builds of deployable installations are received as file sets, and the installations are staged to local storage at the data centers. User-specified deployment launch specifications that specify multiple already-staged deployable installations and service clouds to execute a deployment are received; and asynchronous, concurrent deployment of the multiple deployable installations by the service clouds based on the deployment launch specification are launched. Deployment controllers select a latest deployable installation staged to the service clouds, install and start staged applications in the latest deployable installation, remap incoming API URLs from a replaced version to the started staged application in the latest deployable installation, inventory dependencies, post-remapping, on the replaced version and mark the replaced version for deletion if no dependencies remain active; and report completion of deployment.