Web Application Server Resource Compatibility During Blue-Green Deployment
Find Innovative SolutionsGenerate 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
Engineering 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
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
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
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
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
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
Data Source
Figure 1
Figure 2
Figure 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.