Database Pool Module for Automated Connectivity Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current database systems face significant downtime issues due to unplanned outages, which can lead to substantial disruptions in services like email forwarding and e-commerce operations, as they often rely on reactive approaches that delay problem resolution and require immediate personnel intervention.

Innovation Solution

A computer server system with a database pool module that manages connections between processing threads and database modules, selectively disconnects from unresponsive modules, initiates recovery processes, and reconnects when they become responsive, ensuring continuous operation and minimizing downtime.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a reactive approach is used to handle database outages, then personnel can analyze and repair problems when they occur, but significant downtime occurs before problem resolution

Engineering Contradiction:
Improvedatabase availabilityVSAvoiddowntime duration
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by implementing automated monitoring that detects database unresponsiveness before it causes service failure. The monitoring thread continuously checks database connectivity and proactively terminates connections to unresponsive databases, preventing outages from propagating to users. This preliminary detection and response mechanism eliminates the waiting period inherent in reactive approaches.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements self-service through automated monitoring and recovery mechanisms that operate without human intervention. The monitoring thread autonomously detects unresponsive databases, terminates connections, and attempts reconnection when databases become responsive again. This self-managing system eliminates dependency on personnel availability and reduces downtime significantly compared to manual reactive approaches.

Inventive Principle:
Principle #25Self-service

2Ease of operation

If manual monitoring and repair approaches are used, then problems can be addressed with human judgment, but response is delayed until personnel are available

Engineering Contradiction:
Improveproblem resolution capabilityVSAvoidresponse time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The monitoring system operates autonomously without requiring human intervention for detection or initial response. The monitoring thread continuously checks database connectivity, automatically identifies unresponsive databases, and terminates connections proactively. This self-managing approach provides immediate response to issues regardless of personnel availability, while still allowing human operators to intervene when needed for complex problems.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements continuous feedback through the monitoring thread that constantly checks database responsiveness and provides real-time information about system health. This feedback loop enables automated adjustment of connection states based on current database performance, allowing the system to respond immediately to changes without waiting for human analysis while maintaining the capability for human judgment when required.

Inventive Principle:
Principle #23Feedback

3Stability of the object's composition

If database connections are maintained during outages, then connection state is preserved, but processing threads are blocked and service availability decreases

Engineering Contradiction:
Improveconnection state integrityVSAvoidservice availability
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The system segments the connection management function into separate components: active processing connections and monitoring connections. The monitoring thread uses dedicated test connections to check database responsiveness without interfering with processing threads. When unresponsiveness is detected, only the monitoring connection state triggers a response that terminates processing connections, allowing the system to maintain connection integrity information while preventing blocked processing.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The monitoring thread acts as an intermediary between the processing threads and the database. It continuously monitors database responsiveness through test connections and mediates the connection state by terminating processing connections when unresponsiveness is detected. This intermediary mechanism preserves connection state information while preventing processing threads from being blocked by unresponsive databases, thus maintaining service availability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS8010551B2Computer server system including a database pool module providing database connectivity recovery features and related methods
Publication Date: 2011.08.30 MALIKIE INNOVATIONS LTD
  • US8010551B2 patent drawing
  • US8010551B2 patent drawing
  • US8010551B2 patent drawing

AI summary

A computer server system may include a plurality of database modules for storing user data for a plurality of users, and at least one processing module comprising a plurality of processing threads for processing jobs for users based upon respective user data. The computer server system may further include a database pool module connected between the plurality of database modules and the at least one processing module. The database pool module may be for selectively connecting the processing threads to corresponding database modules including respective user data for jobs to be processed, and determining when a database module becomes unresponsive and terminating processing thread connections to the unresponsive database module based thereon. The database pool module may also be for determining when the unresponsive database module becomes responsive and restoring processing thread connectivity thereto based thereon.