Augmented Stub Failover via Naming Service

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In clustered computer systems, existing technologies face challenges in transparently detecting and recovering from node failures, leading to communication failures and loss of session state data, which complicates graceful failover and increases system complexity.

Innovation Solution

A system with an augmented stub that detects node failures and transparently fails over to another node, using a naming service to manage cluster membership and maintain cluster state data, ensuring seamless communication and session continuity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If nodes are made cluster-aware to detect failures and resume jobs, then graceful failover is achieved, but device complexity increases significantly

Engineering Contradiction:
Improvegraceful failoverVSAvoidnode complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a naming service as an intermediary component that centralizes the complexity of cluster member management and failure detection. Individual nodes do not need to implement complex failure detection logic; instead, they rely on the naming service to provide updated references to active cluster members. This mediator absorbs the complexity burden, allowing nodes to remain simpler while still achieving graceful failover.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The naming service implements a feedback mechanism where it continuously monitors cluster member status and provides updated references back to clients. When a node fails, the naming service detects the failure and returns updated stub information to clients, enabling automatic failover without requiring complex local detection logic at each node.

Inventive Principle:
Principle #23Feedback

2Stability of the object's composition

If load balancer directs all requests to a single node, then session state coherence is maintained, but communication failure occurs when that node fails

Engineering Contradiction:
Improvesession state coherenceVSAvoidcommunication availability
Core Design Contradiction:
Stability of the object's compositionVSReliability

Solution Approach 1:

The patent makes the client stub dynamic by enabling it to automatically update its reference target based on cluster member status changes. Instead of a static reference to a single node, the stub can be reassigned to different active nodes through the naming service, maintaining session state coherence while adapting to node failures.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs preliminary actions by having the naming service proactively detect node failures and update stub references before the client attempts communication with a failed node. This prevents communication failures by redirecting requests to active nodes in advance.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If multiple nodes run application components, then scalability and fault tolerance are improved, but detecting and recovering from failures becomes more difficult

Engineering Contradiction:
ImprovescalabilityVSAvoidfailure detection difficulty
Core Design Contradiction:
ProductivityVSDifficulty of detecting and measuring

Solution Approach 1:

The naming service acts as a central intermediary that simplifies failure detection in scaled environments. Instead of each client having to monitor multiple nodes independently, the naming service consolidates this function, providing a single point of query for active cluster members and their current status.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The naming service implements self-service by automatically monitoring cluster member status and proactively updating client stubs when failures occur. This eliminates the need for clients to implement their own complex failure detection and recovery logic, simplifying the scaled system while maintaining reliability.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS7434087B1Graceful failover using augmented stubs
Publication Date: 2008.10.07 ORACLE AMERICAN INC
  • US7434087B1 patent drawing
  • US7434087B1 patent drawing
  • US7434087B1 patent drawing

AI summary

Various embodiments of a system and method for failing over one cluster node to another are disclosed. The system may include a client networked to a cluster of computer nodes, connected to a persistent data store such as a database resident on a backend system. Each node of the cluster may be configured to run a distributed application component. The client may be configured to communicate with an instance of the application running on a first node. The client may include an augmented stub capable of accessing the instance of the application on the first node and capable of detecting a failure of the first node. In response to detecting a failure in the first node, the augmented stub may be capable of failing over to a second node and accessing the instance of the application on the second node, transparently to the client.