I'm rather new at Jboss Configuration but i'm trying to determine the cause of a performance problem i think being not a trivial one:
We have an application that shows a dinamically constructed webpage, and even with a single-user doing a single request the
time it takes to show the result is of many tens of seconds!!
After many days spent analyzing this problem i came upon the following facts:
- the response time is not affected by application server and db server resources (we have a quad core/ 8 GB RAM as application and a 2 node RAC Oracle as DB).
- The statistics about the DB Connection Pool collected trough the jmx-console are all similiar to the following:
Available Connections Count:50
Max Connections In Use Count: 1
Connections Destroyed Count:0
Connections In Use Count:0
Total Block Time:60
Average Block Time For Sub Pool:1
Maximum Wait Time For Sub Pool:2
Total Timed Out Connections:0
- The "total Block Time" keeps increasing after every single request.
With a log generated by "p6spy", i determined that the single webpage request generates over 1400 sql statements, and
the statements are sequentially executed using a single connection.
Then I came to the conclusion that total block time increasing is caused by the fact that when the connection is busy with a
statement, the following one has to wait (the statements are all "read-only")
so i have the following questions:
- why is used a single connection when the pool has other 49 avalaible?
- Is it possible to force the "parallelization" of the statements??
- is there a way to have a detailed log about the connection pool management ??
Thanks in advance,