Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Are Clustered WebLogic JDBC DataSource settings per node or per cluster?

I have a WebLogic 9.2 Cluster which runs 2 managed server nodes. I have created a JDBC Connection Pool which I have targeted at All servers in the cluster. I believe this will result in the physical creation of connection pools on each of the 2 managed servers (although please correct me if I'm wrong)?

Working on this assumption I have also assumed that the configuration attributes of the Connection Pool e.g. Min/ Max Size etc are per managed server rather than per cluster. However I am unsure of this and can't find anything which confirms or denies it in the WebLogic documentation.

Just to be clear here's an example:

I create connection-pool-a with the following settings and target it at All servers in the cluster:

Initial Capacity: 30
Maximum Capacity: 60

Are these settings applied:

  1. Per managed server - i.e. each node has an initial capacity of 30 and max of 60 connections.
  2. Across the cluster - i.e. the initial number of connections across all managed servers is 30 rising to a maximum of 60.
  3. In some other way I haven't considered?

I ask as this will obviously have a significant effect on the total number of connections being made to the Database and I'm trying to figure out how best to size the connection pools given the constraints of our Database.

Cheers,

Edd

like image 222
Edd Grant Avatar asked Feb 16 '11 12:02

Edd Grant


People also ask

How does WebLogic clustering work?

A WebLogic Server cluster consists of multiple WebLogic Server server instances running simultaneously and working together to provide increased scalability and reliability. A cluster appears to clients to be a single WebLogic Server instance.

What is JDBC connection pool in WebLogic?

A connection pool is a named group of identical JDBC connections to a database that are created when the connection pool is deployed, either at WebLogic Server startup or dynamically during run time. Your application "borrows" a connection from the pool, uses it, then returns it to the pool by closing it.

How many types of clusters are there in WebLogic?

WebLogic Server supports two types of clustering configurations, configured and dynamic. Configured clusters are created by manually configuring each individual Managed Server instance. In dynamic clusters, the Managed Server configurations are generated from a single, shared template.


2 Answers

1.Per managed server - i.e. each node has an initial capacity of 30 and max of 60 connections.

It is per server in the Cluster.

I cannot find the documentation right now, but the reason I know this, is when the DBA used to monitor actual DB sessions, as each Managed server was started, our numberof open connections used to increment by the value of "Initial Capacity" for that Data Source. Say Initial Capacity = 10 for the Cluster, which has Server A and B. When both are starting up, we would first see 10 open (but inactive) sessions on the DB, then 20.

At the database, using Oracle for example, there is a limiting value set for the DB user's profile which limits the total number of open sessions which the Weblogic user can hold.

like image 101
JoseK Avatar answered Sep 22 '22 20:09

JoseK


WebLogic's ability to target resources to a Cluster is intended to help keep settings consistent across a large number of application servers. The resource settings are per server so whenever you bump up the connections for a DS that is used by a cluster, you would want to multiply it by the maximum number of WebLogic servers running at any time (This isn't always the same as the number of members in the cluster).

like image 22
Musannif Zahir Avatar answered Sep 22 '22 20:09

Musannif Zahir