×

Method and system for transparent database connection pooling and query queuing

  • US 8,484,242 B1
  • Filed: 08/24/2010
  • Issued: 07/09/2013
  • Est. Priority Date: 08/24/2010
  • Status: Active Grant
First Claim
Patent Images

1. Database accelerator apparatus, for use in a network having a set of at least one client system each running an application which makes database queries via a network to a particular IP address and port combination, and a set of at least one database server each having access to at least a portion of a database,the accelerator apparatus being arranged to:

  • receive, through a network port, a database query made by the set of client systems and directed to the particular IP address and port combination, the received database query including database query text;

    determine, by reference to data objects describing a plurality of pre-existing open connections from the accelerator apparatus to the database servers, whether one of the connections is available for the query, and if so, then forward the query through the available connection toward the set of database servers, wherein the data objects are allocated among a plurality of connection pools including at least one data object allocated to a first connection pool and at least one data object allocated to a second connection pool, all of the connections in the first connection pool being to servers designated to handle read queries only, and all of the connections in the second connection pool being to servers designated to handle write queries, and at least one of the connections in the second connection pool being to a server also designated to handle read queries; and

    select a preferred pool and a less-preferred pool of the connection pools in dependence upon whether the received query is a read query,wherein the preferred pool selected by the apparatus if the received query is a read query, is the first connection pool, and wherein the less-preferred pool selected by the apparatus if the received database query is a read query, is the second connection pool,and wherein the determination of whether one of the connections is available for the query consists of a first sub-determination of whether a connection in the preferred pool is available for the query, and if a connection in the preferred pool is not available for the query then a second sub-determination of whether a connection in the less-preferred pool is available for the query.

View all claims
  • 6 Assignments
Timeline View
Assignment View
    ×
    ×