I just wanted to know the best performing settings on Connection Pooling and Cloning for WebSphere. Our application is such that about 60 users access the site concurrently. When the Number of Users accessing our site reaches above 50....the performance of the site degrades very badly...any advice from anybody who has experienced such problems earlier?????
We used our own connection pooling in the beginning but after WS started using JDBC 2.0 and datasources we are using the WS API to get Connections.
Iam not sure if the pooling has been implemented properly.
In general the mechanism to get a pooled connection is
pds = (ConnectionPoolDataSource)ctx.lookup(......);
where pds is a ConnectionPoolDataSource reference.
PooledConnection _pc = pds.getPooledConnection();
Connection con = _pc.getConnection();
ctx.lookup() doesnt seem to give a ConnectionPoolDataSource but it gives a DatSource reference. Now this datasource reference doesnt seem to implement the ConnectionPoolDataSource interface.
So, I suspect the getConnection is giving me a physical connection instead of a pooled connection which can be a big burden on resources when a huge number of folks start hittin the frikkin site.
What does your WAS resource analyzer say in the DBPools section??? Does the pool size figure go up and down according to the number of connections???
Are u using EJB? Any Classic Connection pooling? size of the connection pool? any code for pooling? what results do you get from the Resource Analyzer? how do you determine ur connection pool size? what size from the start and have you changed any of these sizes et al?
How many servlets, how many EJB programs, what database, tables and what class drivers do you use?
WAS is robust and we have had plenty of hits on proper deployment and scalabity is good. Just that little bit of work will do a lot of good for WAS......
We like it better here with VAJ .............
We are not using EJB's. We are using servlets and the max size of the connection pool is 10. This is because the connection release from the pool works only for 10!!! we did not use any special code for pooling. We did it normally with the ctx lookup and getConnection(). From the resource analyzer we found that the connections were getting released only when the max pool connection size is 10. we started from max pool size = 60. We have around 70 servlets....but the main thing is each screen in our application is divided into four parts!!!! and each part may hold a minimum of one connection each. We are using oracle 8.0.6. we have 32 tables.
I'm very doubtful if we are doing something wrong....WAS should be easily able to support a pool size of atleast 35...