Plug-in Framework for Distributed System Fault Tolerance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current high availability (HA) frameworks in distributed systems are tightly coupled and require significant development effort to accommodate different components and failure modes, making it challenging to customize and maintain HA capabilities efficiently.

Innovation Solution

A plug-in based framework that uses blueprints and microservices to provide a generic HA approach, allowing users to define and implement HA functionality easily, with components available as services in a cloud environment for quick upgrade and maintenance, reducing development effort and downtime.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a tightly coupled HA framework is implemented to ensure reliable fault tolerance, then system reliability is improved, but device complexity and development effort increase significantly

Engineering Contradiction:
Improvefault toleranceVSAvoiddevelopment effort
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The HA framework is segmented into independent plug-in modules that can be individually developed, deployed, and maintained. Each plug-in handles specific HA functionalities (e.g., failure detection, failover, restoration) as separate units, reducing the complexity of the overall system while maintaining reliability through modular fault isolation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The framework provides universal HA capabilities through a common architecture that supports multiple failure modes and scenarios. The plug-in mechanism allows a single framework to serve multiple purposes (different entities, failure conditions, actions) without requiring separate tightly-coupled implementations for each case.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Adaptability or versatility

If a customized HA framework is developed to meet varying user requirements, then adaptability is improved, but development time and costs increase

Engineering Contradiction:
Improvecustomization capabilityVSAvoiddevelopment time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The HA framework is designed to be dynamic and configurable through plug-ins that can be added, removed, or modified at runtime. Users can customize HA behavior by selecting and configuring appropriate plug-ins without requiring complete re-development, enabling adaptability while reducing development time through reusable components.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The framework enables users to self-customize HA functionality by selecting from available plug-ins and configuring them according to their specific needs. This self-service approach allows customization without requiring extensive developer intervention, reducing development time while maintaining adaptability.

Inventive Principle:
Principle #25Self-service

3Reliability

If traditional HA frameworks are maintained and upgraded, then system reliability is preserved, but maintenance downtime increases

Engineering Contradiction:
ImproveHA capabilityVSAvoidmaintenance downtime
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

By segmenting HA functionality into independent plug-ins, maintenance can be performed on individual plug-ins without affecting the entire HA framework. This allows targeted updates and repairs that minimize downtime while preserving overall system reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The framework combines multiple HA functionalities into a unified plug-in architecture that can be maintained as a cohesive system. This allows for standardized maintenance procedures and easier deployment of updates across different HA components, reducing overall maintenance downtime.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS11797399B2Plug-in based framework to provide fault tolerance and high availability in distributed systems
Publication Date: 2023.10.24 VMWARE INC
  • US11797399B2 patent drawing
  • US11797399B2 patent drawing
  • US11797399B2 patent drawing

AI summary

A plug-in based framework provides high availability (HA), including fault tolerance, in a distributed system, such as provided by a virtualized computing environment. The framework uses blueprints that define entities to be monitored, failure conditions, failover actions, restoration actions, and other aspects associated with HA. Microservices execute the blueprints, and a load balancer may balance the execution of the blueprints amongst microservices.