Software Component Refresh Without Interruption

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Refreshing software components, such as services or operating systems, often requires downtime due to the need for upgrades, fixes, or resource adjustments, which is particularly challenging in cloud environments where continuous availability is crucial.

Innovation Solution

A method and system for refreshing software components without interruption by detecting idle instances, activating a parallel refresh process, monitoring the instance's state, and switching to the new instance once the refresh is complete, allowing for seamless transitions without locking resources or requiring multiple machines.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a software component is refreshed during operation, then the software component can be upgraded or fixed, but the software component becomes unavailable or paused causing interruption

Engineering Contradiction:
Improvesoftware availabilityVSAvoidrefresh process disruption
Core Design Contradiction:
ReliabilityVSEase of manufacture

Solution Approach 1:

The system creates a new instance of the software component in advance before the current instance becomes inactive. This preliminary action allows the refresh to be prepared and staged without interrupting service, so that when the current instance becomes available again, the new instance is already ready to take over immediately.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates a copy (new instance) of the software component that can be refreshed independently. This copy serves as a backup that can replace the current instance without interruption. The copying approach allows the refresh to occur on the duplicate while the original continues to serve requests.

Inventive Principle:
Principle #26Copying

2Productivity

If a refresh process is started during idle time, then resources can be freed up or upgraded, but the refresh process may be interrupted if the software component becomes active again

Engineering Contradiction:
Improverefresh efficiencyVSAvoidrefresh completion
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary checks to ensure the software component has been inactive for a sufficient duration before starting the refresh process. This preliminary action guarantees that the refresh will not be interrupted by incoming requests, ensuring reliable completion while still utilizing idle time efficiently.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system continuously monitors the state of the software component during the refresh process. If the component becomes active again before the refresh completes, the system receives feedback and cancels the refresh process appropriately, preventing resource conflicts and ensuring system stability.

Inventive Principle:
Principle #23Feedback

3Reliability

If traditional refresh approaches are used, then multiple machines or processor units are required, but this increases system complexity and resource requirements

Engineering Contradiction:
Improvecontinuous availabilityVSAvoidsystem architecture
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system merges the refresh capability into the single software component instance itself, rather than requiring separate machines or processor units. The new instance is created within the same execution environment, combining the functions of refresh and continuous availability in a single integrated system rather than distributed across multiple components.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system transitions from a temporal dimension (sequential refresh causing downtime) to a parallel dimension (concurrent instances). By creating a new instance that runs alongside the current one, the system adds a dimensional aspect of parallelism that allows refresh operations to occur without affecting service continuity.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS10169030B1Refreshing a software component without interruption
Publication Date: 2019.01.01 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10169030B1 patent drawing
  • US10169030B1 patent drawing
  • US10169030B1 patent drawing

AI summary

A method, system and computer program product are provided for refreshing a software component without interruption. The method includes detecting when a current instance of the software component is inactive and activating a refresh process of the software component in parallel to the current instance, including starting a new instance of the software component. The method further includes monitoring a state of the current instance and, when the current instance ceases to be inactive, canceling the refresh process. The method includes determining that the refresh process is complete and switching from the current instance to the new instance of the software component.