US7784033B2

JDBC monitoring and diagnostics enhancements

Summary by NHIP

JDBC monitoring system

The system monitors a database connection pool and prepared statement cache within an application server. It creates diagnostic images containing specific profiles for connection usage, wait failures, and connection leaks to track client application behavior.

Claim Score by NHIP

Read claim 1, the broadest

Abstract

Applications can interact with a database using a JDBC subsystem. The JDBC subsystem includes a connection pool with multiple connections, and parses database requests to produce statements to be sent to a database management system (DBMS). A previously parsed statement can be stored in a prepared statement cache. A profiling component can be used to maintain profile information concerning the connection pool and the prepared statement cache.

US7784033B2, drawing sheet 1
Sheet 1 of 6

Term

Projected expiry 26 June 2029.

  1. Priority
  2. Filed
  3. Granted
  4. Today
  5. Projected expiry

20 claims: 3 independent, 17 dependent

  1. 1
    Broadest claimClaim Score 44, average(NHIP)A system comprising:a computer including a processor, memory, and application server operating thereon, wherein the application server enables access between one or more client applications and a database;a JDBC subsystem associated with the application server, wherein the JDBC subsystem includes a connection pool which includes a plurality of connections for use by the client applications in communicating requests to the database, a prepared statement cache which includes a plurality of previously parsed requests that can be reused by the client applications and communicated to the database, a profiling component which maintains profile information concerning the connection pool and the prepared statement cache, wherein the profile information includes a connection usage profile indicating which particular client applications are currently using a connection or a prepared statement with the database, and a statistics monitoring component which maintains cumulative or averaged information concerning usage of the connection pool and the prepared statement cache over all of the client applications;and wherein the system enables a diagnostic image to be created which includes the profile information and the cumulative or averaged information for applications that are being monitored by the JDBC subsystem.
  2. 9
    A method of providing a diagnostic image for a JDBC subsystem, comprising the steps of:providing a computer including a processor, memory, and application server operating thereon, wherein the application server enables access between one or more client applications and a database;providing a JDBC subsystem associated with the application server, wherein the JDBC subsystem includes a connection pool which includes a plurality of connections for use by the client applications in communicating requests to the database, a prepared statement cache which includes a plurality of previously parsed requests that can be reused by the client applications and communicated to the database, a profiling component which maintains profile information concerning the connection pool and the prepared statement cache, wherein the profile information includes a connection usage profile indicating which particular client applications are currently using a connection or a prepared statement with the database, and a statistics monitoring component which maintains cumulative or averaged information concerning usage of the connection pool and the prepared statement cache over all of the client applications;and creating a diagnostic image which includes the profile information and the cumulative or averaged information for applications being monitored by the JDBC subsystem.
  3. 17
    A computer readable medium, including instructions stored thereon which when read and executed by a computer cause the computer to perform the steps comprising:providing an application server that enables access between one or more client applications and a database;providing a JDBC subsystem associated with the application server, wherein the JDBC subsystem includes a connection pool which includes a plurality of connections for use by the client applications in communicating requests to the database, a prepared statement cache which includes a plurality of previously parsed requests that can be reused by the client applications and communicated to the database, a profiling component which maintains profile information concerning the connection pool and the prepared statement cache, wherein the profile information includes a connection usage profile indicating which particular client applications are currently using a connection or a prepared statement with the database, and a statistics monitoring component which maintains cumulative or averaged information concerning usage of the connection pool and the prepared statement cache over all of the client applications;and creating a diagnostic image which includes the profile information and the cumulative or averaged information for applications being monitored by the JDBC subsystem.