Proxy Service Process for Watchdog-Resilient Application Updates
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Watchdog processes in computer systems often restart applications during updates, which can corrupt files and state information, as they detect application shutdowns and initiate restarts prematurely, disrupting the update process.
Innovation Solution
Implementing a proxy service process that allows the application to continue executing in a non-servicing state, avoiding detection by watchdog processes, thereby preventing premature restarts during updates. This proxy service monitors the update process and switches back to a servicing state once completed, ensuring data integrity and successful updates.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If the application is shut down during the update process, then the application files can be configured without process access, but the watchdog process may restart the application prematurely causing file corruption
Solution Approach 1:
A proxy service process is introduced as an intermediary to maintain the application's presence in the system process list during updates. The proxy process prevents watchdog from detecting application shutdown and initiating premature restarts, while allowing update processes to safely configure files without interference from restarted application processes.
2Reliability
If the application remains running during the update process, then watchdog will not restart it, but processes may access files being modified causing corruption
Solution Approach 1:
The application functionality is segmented into two distinct components: a proxy service process that maintains system presence and prevents watchdog intervention, and update processes that perform file configuration. This segmentation allows the proxy to keep the application logically 'running' for watchdog purposes while isolating the update operations to avoid file access conflicts.
3Reliability
If a proxy service process is used to prevent watchdog detection, then updates can complete without premature restarts, but the system complexity increases
Solution Approach 1:
The proxy service process serves multiple functions simultaneously: it maintains the application's presence in the system process list to prevent watchdog detection, allows update processes to safely configure files, and can be configured to point to different application versions. This multi-functionality reduces the need for additional separate mechanisms.
Data Source
AI summary
Techniques for updating an application using a non-servicing state are disclosed. One or more embodiments include executing an application, in a state which does not provide services, to avoid the application being restarted by a watchdog process. The non-servicing state may not perform any function other than to continue executing at least one proxy service process which avoids the application being restarted by a watchdog process. Responsive to determining that the application process is executing, the watchdog process does not detect any issue with the application, and therefore does not restart the application. The watchdog process may verify the continuing execution of the application process by, for example, determining that the application process is included in a list of executing processes managed by an operating system. The watchdog process may verify the continuing execution of the application process by, for example, communicating with the application process.


