Resource Adapter Concurrent Connection Pools
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The J2EE Connector Architecture faces performance bottlenecks due to its limitation of creating, destroying, or accessing only one connection at a time, leading to crashes and inefficiencies during high loads when multiple clients attempt to connect to an Executive Information System (EIS) simultaneously.
Innovation Solution
A resource adapter with multiple connection pools and a cluster coordinator that assigns connection objects from these pools to clients, allowing for concurrent connection establishment and management, thereby improving connection pooling efficiency and stability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If a single connection pool is used to manage connections between clients and EIS, then connection management is simplified, but system throughput and reliability deteriorate under high load due to sequential connection establishment
Solution Approach 1:
The patent divides a single connection pool into multiple independent connection pools (first connection pool, second connection pool, etc.). Each pool can independently establish connections concurrently, transforming the sequential connection establishment process into parallel operations. This segmentation resolves the contradiction by maintaining manageable complexity through modular pool structures while dramatically improving throughput through concurrent connection establishment.
Solution Approach 2:
The patent introduces a new dimension of parallelism by creating multiple connection pools that operate simultaneously. Instead of improving throughput within a single sequential pool, the system adds a dimensional layer of concurrency where multiple pools work in parallel. This dimensional change allows the system to handle high load effectively while keeping each individual pool's management relatively simple.
2Ease of operation
If a single connection pool is used, then resource allocation is straightforward, but system reliability worsens under high load due to thread pileup and potential crashes
Solution Approach 1:
By segmenting the single connection pool into multiple independent pools, the patent distributes the operational load and risk across separate units. Each pool independently manages its connections and threads, preventing thread pileup from cascading across the entire system. This segmentation maintains operational simplicity through standardized pool management while dramatically improving reliability by isolating failures to individual pools.
Solution Approach 2:
The patent implements a cushioning mechanism by creating multiple connection pools that can absorb and distribute connection requests. When one pool experiences high load or potential failure, other pools continue to operate normally, providing a buffer that prevents system-wide crashes. This prior cushioning through redundancy ensures system stability under high load conditions.
3Quantity of substance
If connections are established sequentially in a single pool, then resource overhead is reduced, but connection establishment time increases during heavy load
Solution Approach 1:
The patent segments the connection establishment process across multiple pools, allowing simultaneous connection creation in parallel. Each pool maintains its own set of connection objects and can independently service connection requests without waiting for other pools. This segmentation reduces the effective connection establishment time under heavy load while keeping each individual pool's resource requirements manageable.
Solution Approach 2:
The patent ensures continuous connection establishment by maintaining multiple pools that can simultaneously create and provide connection objects. Instead of a single pool that must sequentially process each connection request, multiple pools continue their useful action of connection establishment in parallel, dramatically reducing the time required to satisfy connection demands during heavy load periods.
Data Source
AI summary
Certain example embodiments relate to a resource adapter configured to establish connections between an executive information system (EIS) and one or more clients. The resource adapter includes at least a first and a second connection pool, both maintaining a plurality of connection objects. Each connection object defines a channel of communication between the EIS and the resource adapter. A cluster coordinator is configured to assign a first connection object in a first connection pool and a second connection object in a second connection pool to the one or more clients to create at least two coexisting connections between the one or more clients and the EIS.


