Software Instance Exchange for Update Consistency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The maintenance of software programs in large computing systems, particularly in cloud environments, is complex due to partial updating issues where some software instances remain at an old level while others are updated, leading to increased management costs and potential quality issues of cloud services.
Innovation Solution
A method is introduced where a failed software instance is exchanged with a suitable instance from other software instances based on optimization criteria, allowing the updating process to continue, thereby maintaining all instances at a consistent level, reducing partial updates, and minimizing management costs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If updating processes are performed frequently to enable continuous delivery, then productivity and ability to deliver new software levels are improved, but the risk of partial updating of software instances increases
Solution Approach 1:
The system performs preliminary actions by creating a backup instance before updating the primary instance. This preparatory step ensures that if the update fails or creates a partial update scenario, the system can restore to the backup instance, thereby maintaining update consistency even with frequent updates
Solution Approach 2:
The system implements feedback mechanisms by monitoring the update status of software instances and automatically initiating exchange operations when partial updates are detected. This closed-loop control ensures that update consistency is maintained by detecting and correcting deviations caused by frequent updates
2Reliability
If multiple software instances are maintained to ensure adequate performance and reliability, then service quality is improved, but management complexity increases due to different software levels
Solution Approach 1:
The system applies self-service by automatically detecting partial updates and initiating exchange operations between instances without human intervention. The system autonomously identifies which instances need updating and performs the exchange, thereby reducing management complexity while maintaining service quality through consistent software levels across instances
Solution Approach 2:
The system merges the management of multiple software instances by implementing a centralized exchange mechanism that coordinates updates across all instances. Instead of managing each instance separately, the system combines their update processes through automatic exchange operations, reducing overall management complexity while ensuring all instances maintain the same software level
3Duration of action of stationary object
If software instances are updated in place, then continuity of service is maintained, but partial updating occurs when updates fail, increasing management cost
Solution Approach 1:
The system uses copying by creating a backup instance before performing updates on the primary instance. This copy serves as a fallback option if the update fails, allowing the system to restore service continuity without incurring the costs associated with manual intervention or dealing with partial updates
Solution Approach 2:
The system implements beforehand cushioning by preparing a backup instance prior to the update process. This preparatory measure acts as a cushion or safety net that prevents the adverse effects of update failures, ensuring service continuity while avoiding the increased management costs that would result from handling partial update scenarios
Data Source
AI summary
Maintaining a plurality of software instances of a software program in a computing environment. An updating request is received for an updating process of the software instances from an old level to a new level. An attempt is made to update each software instance to the new level according to at least one updating policy. Responsive to a failure of the updating of each failed instance of the software instances, an exchanging instance is searched among the other software instances according to at least one searching policy, the exchanging instance being adapted to be exchanged with the failed instance for continuing the updating process according to at least one optimization criterion of the computing environment. The failed instance and the exchanging instance are exchanged in response to a positive result of the searching. The updating process corresponding to the failed instance is resumed.


