pickConnection
public ConnectionImpl pickConnection(InvocationHandler proxy,
List<String> configuredHosts,
Map<String,JdbcConnection> liveConnections,
long[] responseTimes,
int numRetries)
throws SQLException
Called by the driver to pick a new connection to route requests over.
See LoadBalancedConnectionProxy.createConnectionForHost(String)
- 指定者:
pickConnection 在接口中 BalanceStrategy
- 覆盖:
pickConnection 在类中 RandomBalanceStrategy
- 参数:
proxy - the InvocationHandler that deals with actual method calls to
the JDBC connection, and serves as a factory for new
connections for this strategy via the
createConnectionForHost() method.
This proxy takes care of maintaining the response time list, map of
host/ports to live connections, and taking connections out of the live
connections map if they receive a network-related error while they are in
use by the application.
configuredHosts - the list of hosts/ports (in "host:port" form) as passed in by
the user.
liveConnections - a map of host/ports to "live" connections to them.
responseTimes - the list of response times for a transaction
for each host in the configured hosts list.
numRetries - the number of times the driver expects this strategy to re-try
connection attempts if creating a new connection fails.
- 返回:
- the physical JDBC connection for the application to use, based
upon the strategy employed.
- 抛出:
SQLException - if a new connection can not be found or created by this
strategy.