Intermediary Client Reconnection to Preferred Server in HA Cluster

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High availability server clusters face challenges in seamlessly reconnecting clients to a preferred server after an outage or restart, disrupting continuous service and requiring complex infrastructure changes.

Innovation Solution

Implementing a method that monitors persistent connections to identify unavailability, establishes temporary connections with available servers, and prompts reconnection attempts to the preferred server using a connection switching pool, allowing simultaneous maintenance of two connections within the same server cluster without altering the IP loading balancing layer or service infrastructure.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If persistent connections are monitored to identify server unavailability, then service reliability is improved, but connection management complexity increases

Engineering Contradiction:
Improveservice reliabilityVSAvoidconnection management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system performs preliminary actions by establishing a temporary persistent connection to an available server before the preferred server is fully restored. This proactive approach ensures continuous service availability by pre-positioning a backup connection path, thereby improving reliability without requiring complex real-time switching mechanisms.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary connection management mechanism that mediates between the client and server cluster. This intermediary layer handles the complexity of monitoring, connection establishment, and switching, thereby improving service reliability while containing connection management complexity within a dedicated component rather than distributing it throughout the entire system.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Duration of action of stationary object

If temporary persistent connections are established to available servers, then service continuity is improved, but connection pool management complexity increases

Engineering Contradiction:
Improveservice continuityVSAvoidconnection pool management complexity
Core Design Contradiction:
Duration of action of stationary objectVSDevice complexity

Solution Approach 1:

The connection pool is segmented into multiple management structures, allowing the system to independently manage temporary persistent connections separate from primary connections. This segmentation enables service continuity by isolating temporary connection management to specific pool segments, thereby reducing the complexity burden on the entire connection pool management system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The connection pool management employs dynamic characteristics by allowing temporary persistent connections to be established and terminated based on real-time server availability. This dynamic approach ensures service continuity by adaptively adjusting connection states, while the temporary nature of these connections limits the long-term complexity increase compared to permanent dual-connection architectures.

Inventive Principle:
Principle #15Dynamics

3Reliability

If reconnection attempts are prompted at intervals, then preferred server reconnection reliability is improved, but time delay increases

Engineering Contradiction:
Improvereconnection reliabilityVSAvoidreconnection time delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system implements periodic reconnection attempts at strategically determined intervals rather than continuous polling. This periodic action improves reconnection reliability by providing regular opportunities to restore preferred server connections, while the interval-based approach minimizes time loss compared to continuous attempt mechanisms. The temporary persistent connection serves as a bridge during these intervals, ensuring service continuity.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

While reconnection attempts are being prompted at intervals, the temporary persistent connection maintains continuous useful action by handling client requests. This ensures that service continuity is preserved during the reconnection process, effectively masking the time delay associated with interval-based reconnection attempts from the end user perspective.

Inventive Principle:
Principle #20Continuity of useful action

4Adaptability or versatility

If connection switching pool is provided for simultaneous connections, then service adaptability is improved, but infrastructure complexity increases

Engineering Contradiction:
Improveservice adaptabilityVSAvoidinfrastructure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The connection switching pool is designed with universal characteristics, allowing the same pool structure to handle both temporary persistent connections and regular connections. This multi-functionality improves service adaptability by enabling the infrastructure to dynamically switch between different connection types and server states, while avoiding the need for separate specialized infrastructure for each connection type, thereby containing complexity increases.

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

Data Source

PatentUS11956309B1Intermediary client reconnection to a preferred server in a high availability server cluster
Publication Date: 2024.04.09 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11956309B1 patent drawing
  • US11956309B1 patent drawing
  • US11956309B1 patent drawing

AI summary

A method for intermediary client reconnection to a preferred server in a high availability server cluster. The method includes monitoring a persistent connection of a logical connection to a preferred server to identify an unavailability of the preferred server, establishing a temporary persistent connection for the logical connection to an available server to replace an unavailable preferred server, prompting attempts to reconnect to the preferred server at intervals, and providing a connection switching pool and simultaneously re-establishing a persistent connection with the preferred server for the logical connection using the connection switching pool while terminating the temporary persistent connection to the available server. The connection switching pool and a main connection pool used by the persistent connection allow for simultaneously maintaining two connections to different servers in a same server cluster for the logical connection.