Self-Healing Recovery Engine with State Machine

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing cloud computing systems require manual intervention for scaling and recovery from faults, which is inefficient and labor-intensive, and lack automated mechanisms to detect and mitigate issues in real-time.

Innovation Solution

Implementing a self-healing system with automated recovery features that use artificial intelligence, machine learning, and a real-time service dependency graph to identify root causes and execute recovery workflows, decoupling monitoring from recovery execution, and employing a finite state machine to manage states and trigger recovery actions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If manual intervention is used for scaling and recovery, then system control is maintained by operators, but efficiency decreases and labor intensity increases

Engineering Contradiction:
Improverecovery efficiencyVSAvoidmanual intervention level
Core Design Contradiction:
ProductivityVSExtent of automation

Solution Approach 1:

The system performs self-diagnosis and self-repair through automated root cause analysis and recovery workflow execution. The monitoring platform detects issues, the root cause analyzer identifies problems, and the recovery workflow coordinator executes recovery actions without requiring manual operator intervention for routine scaling and recovery operations.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

Recovery workflows are pre-defined and prepared in advance for common failure scenarios. When issues are detected, the system executes pre-planned recovery actions immediately, eliminating the need for operators to respond manually and reducing the time between issue detection and resolution.

Inventive Principle:
Principle #10Preliminary action

2Speed

If automated recovery mechanisms are implemented, then recovery speed increases, but system complexity increases

Engineering Contradiction:
Improverecovery speedVSAvoidautomation system complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The automated recovery system is divided into distinct functional modules: monitoring platform for issue detection, root cause analyzer for problem identification, and recovery workflow coordinator for action execution. Each module handles a specific aspect of recovery, making the complex automation manageable and maintainable through modular architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The root cause analyzer acts as an intermediary between the monitoring platform and recovery workflow coordinator. It processes monitoring data, identifies root causes, and triggers appropriate recovery workflows, simplifying the overall system architecture by introducing a dedicated analysis layer that bridges detection and execution.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If real-time monitoring is implemented, then issue detection capability improves, but resource consumption increases

Engineering Contradiction:
Improveissue detection capabilityVSAvoidmonitoring resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The monitoring platform continuously collects system state information and feeds it to the root cause analyzer. The system uses feedback loops to detect changes in service states, trigger root cause analysis only when anomalies are detected, and adjust monitoring intensity based on system health status, reducing unnecessary resource consumption during normal operation.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system implements selective monitoring and analysis based on detected conditions. Rather than continuously analyzing all system parameters at full intensity, the monitoring platform triggers root cause analysis and recovery workflows only when specific threshold conditions are met, reducing resource consumption during normal operation while maintaining reliable detection capability when needed.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10652119B2Automatic recovery engine with continuous recovery state machine and remote workflows
Publication Date: 2020.05.12 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10652119B2 patent drawing
  • US10652119B2 patent drawing
  • US10652119B2 patent drawing

AI summary

Various embodiments of the present technology generally relate to systems and methods for self-healing services and automatic recovery of distribute systems. Some embodiments of the present technology leverage all the available synthetic, customer, client, server, support signals from various sources to intelligently and in real-time detect outages, root cause outages to recoverable targets (e.g., for auto recovery actions), identify the right engineering teams (e.g., for faster manual mitigation), and perform the appropriate recovery action (such as recycle service, reboot server, switch out a faulty rack) or other mitigation actions such as routing, collecting debug information, alerting to the right team, or alert suppression. Some embodiments separate signal monitoring and workflow coordination.