https://bz.apache.org/bugzilla/show_bug.cgi?id=62598

            Bug ID: 62598
           Summary: support pool with multiple JDBC data sources
           Product: Tomcat Modules
           Version: unspecified
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: P2
         Component: jdbc-pool
          Assignee: dev@tomcat.apache.org
          Reporter: yair.le...@gmail.com
  Target Milestone: ---

We are using Tomcat to access "read-only" databases. For scaling and for fail
over, multiple databases are deployed (different physical locations, etc).

The request: would like to be able to create a connection pool that will return
connections from ANY of those configured databases. This has big value for
* Load balancing
* Fail Over

Many JDBC drivers provide such functionality in proprietary form (Oracle "thin"
client, Sybase HA connections, ...). However, this solution is less than ideal.
* Complex to configure, each driver is different, some drivers require server
side configurations
* Difficult to monitor with JMX (see below for wishlist).
* Does not work across database from different vendors.

Compare this with WebLogic JDBC Multi Source:
https://docs.oracle.com/middleware/1213/wls/JDBCA/jdbc_multidatasources.htm#JDBCA209)

The ASK - provide functionality similar to WebLogic Multi-Source connection:
* Define a connection pool that "merges" connection from other sources
* Ability to configure primary list
* Ability to configure backup list, which will be used if all (or some)
primaries are down

Nice to have:
* Expose status to JMX
* Allow JMX to update the primary list and backup list (enable/disable
individual entries, for planned maintenance, etc).

The configuration directive can look like:
<Resource name="jdbc/multiDB"
          auth="Container"
          type="javax.sql.DataSource"
          factory="org.apache.tomcat.jdbc.pool.MultiSourceFactory"
          primary="jdbc/conn-1,jdbc/conn-2,jdbc/conn-3,..."
          backup="jdbc/backup-ds-1,jdbc/backup-ds-2,jdbc/backup-ds-3,..."
>

Where 'conn-1' ... 'backup-ds-3' are other JDBC pools that were defined.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to