Web Application Server Resource Compatibility During Blue-Green Deployment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Cloud service maintenance is challenging due to the difficulty in updating systems without disrupting service, especially when client-side cached content does not immediately reflect server changes, leading to compatibility issues with screen HTMLs and resource data when switching between old and new versions of applications.

Innovation Solution

Implementing blue-green deployment with DNS switching and embedding build versions in HTML and JavaScript, ensuring compatibility between REST APIs and screen HTMLs, allowing seamless transitions while maintaining service availability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If blue-green deployment with DNS switching is implemented to enable nonstop upgrades, then service availability is improved, but compatibility issues arise between client-side cached content and server-side updated resources

Engineering Contradiction:
Improveservice availabilityVSAvoidcompatibility between cached HTML and updated resources
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent applies preliminary action by embedding build version information into HTML and JavaScript files before deployment. This allows the client-side cached content to carry version metadata that enables the server to identify and provide compatible resource data during DNS switching between old and new application versions, preventing compatibility issues before they occur

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback by having the server read build version information from client requests (embedded in cached HTML/JavaScript) and use this feedback to determine which version's resource data to provide. This creates a closed-loop system where the server adapts its resource provision based on the client's cached version, ensuring compatibility during nonstop upgrades

Inventive Principle:
Principle #23Feedback

2Duration of action of stationary object

If version upgrade is performed without stopping services, then service continuity is maintained, but screen display correctness deteriorates due to mismatched resource data

Engineering Contradiction:
Improveservice continuityVSAvoidscreen display correctness
Core Design Contradiction:
Duration of action of stationary objectVSManufacturing precision

Solution Approach 1:

The patent applies parameter changes by embedding build version parameters into HTML and JavaScript files. This allows the server to distinguish between different application versions based on version parameters extracted from client requests, thereby providing the correct resource data parameters that match the client's cached content version, ensuring accurate screen display during continuous service operation

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent uses build version information as an intermediary between the client's cached content and the server's resource data. This intermediary parameter enables the server to bridge the gap between old and new versions by matching resource data to the appropriate version, preventing screen display errors while maintaining service continuity

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentEP3101539B1Selection of compatible resources after updating web application servers
Publication Date: 2021.01.20 CANON KK
  • EP3101539B1 patent drawingFigure 1
  • EP3101539B1 patent drawingFigure 2
  • EP3101539B1 patent drawingFigure 3

AI summary

If a request regarding display of a screen is accepted from a web browser and data included in the request is confirmed to be associated with old resources, a new application server system obtains the old resources from a storage means and transmits the old resources to the web browser.