Guillaume, > <Resource name="jdbc/Signup" auth="Container" > type="javax.sql.DataSource" > driverClassName="oracle.jdbc.driver.OracleDriver" > > The Tomcat manager shows around 1000 sessions on the server, which > seems to be pertinent.
What is your connection allocation strategy? Meaning: do you allocate a Connection object to each session for the life of the session, or do you use some kind of pooling mechanism and only fetch Connection objects when you need to execute a query? If you associate a Connection with each session, I would strongly recommend that you use pooling as described above. If you are already using pooling (which it looks like you /are/ given your configuration), then you might have a connection leak in one or more places. How are you actually getting and releasing your connections? > We can see with the JMXProxy that the JDBC pool connections are never > recycled, e.g. the active connections number is going higher and > higher and never stays at the same level, which is strange because > the amount of active sessions isn't growing. Does your connection count grow larger than 150 (your maxActive number)? Perhaps you really do need that number of connections if you have 1000 sessions. > Do you have any idea about what we can do to 'force' the Tomcat > server to release the unused JDBC connections? Tomcat isn't in charge of your connections... the Oracle driver is. You'd have to look at how they are being used. -chris
signature.asc
Description: OpenPGP digital signature