Connection Pool Idle Timeout Validation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing network connection pooling systems do not effectively manage and remove timed-out connections, leading to resource wastage and performance inefficiencies.

Innovation Solution

A managed connection pool system that selects unused connections, validates them based on a maximum idle time value, and removes connections that exceed this threshold to ensure efficient resource utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If connections are maintained in the pool for longer periods to reduce connection establishment overhead, then connection reuse efficiency is improved, but the risk of using timed-out connections increases

Engineering Contradiction:
Improveconnection reuse efficiencyVSAvoidconnection validity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary validation of connections before they are assigned to handle requests. The connection pool manager checks whether a connection is still valid (not timed out) before reusing it, preventing the use of expired connections while maintaining the pool for efficient reuse.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements a feedback mechanism where connections are monitored for idle time and validated against a timeout threshold. This feedback loop ensures that connections remaining in the pool do not exceed their valid idle period, maintaining reliability while enabling reuse.

Inventive Principle:
Principle #23Feedback

2Reliability

If connections are frequently validated and removed from the pool, then connection validity is maintained, but the overhead of managing the connection pool increases

Engineering Contradiction:
Improveconnection validityVSAvoidconnection pool management overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Instead of continuously validating all connections, the system performs validation periodically based on idle time thresholds. Connections are checked at intervals or when idle time reaches a predefined maximum, reducing the frequency of validation operations while maintaining reliability.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The system uses a maximum idle time parameter to control connection validation. By adjusting this parameter, the system can balance between validation frequency and connection reuse efficiency, managing the trade-off between reliability and overhead through parameter optimization.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If new connections are established frequently to ensure availability, then connection availability is improved, but resource consumption and establishment time increase

Engineering Contradiction:
Improveconnection availabilityVSAvoidnetwork resources
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system prepares connections in advance by maintaining a pool of pre-established connections. When requests arrive, validated connections from the pool are reused immediately, avoiding the need to establish new connections frequently and reducing resource consumption.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Instead of discarding connections after use, the system recovers and reuses them in the connection pool. Connections are discarded only when they exceed the maximum idle time, allowing valid connections to be recovered and reused multiple times, reducing overall resource consumption.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS9612641B2Adjusting the connection idle timeout in connection pools
Publication Date: 2017.04.04 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9612641B2 patent drawing
  • US9612641B2 patent drawing
  • US9612641B2 patent drawing

AI summary

An approach is provided that responds to a connection request to connect to an external network entity using a connection from a managed connection pool. The connection pool is managed by selecting connections from the connection pool that includes one or more currently unused connections with the external network entity. One of the selected connections is validated by comparing an idle time associated with each of the selected connections to a maximum idle time value corresponding to the external network entity. The maximum idle time value being previously identified at the information handling system. The validated connection is then used to connect to the external network entity to satisfy the connection request.