I implemented database connection pooling on this site and on Mobitopia. It took all of 5 minutes since all I did was use Orion's built-in db pooling. The funny thing about this was that I remember specifically taking OUT the data connection stuff over a year ago because I switched from my own Linux box to a hosted Resin server and their JNDI stuff was fucked. I never bothered to add the pooling back in after I switched to JohnCompanies and also I was worried about portability. Now there's a few lines that are OrionServer/J2EE server specific... oh well.
Does anyone have any experience with this pooling system on a real site? I had it working before, but didn't have the traffic to notice anything. I've got a max of 10 connections with a timeout of 10 seconds (which may be way too much for a web page). I'd like to know if anyone had any troubles or whatnot.
And hey, I'm getting a million messages that say: "DriverManagerConnectionPoolConnection not closed, check your code!" when the connections time out. Someone know how to close these weird-ass pseudo connections? Google wasn't helping me out.
Later - the next day. It turns out that I was using Evermind's connection pool wrapper which isn't well cooked. I downloaded the latest JDBC driver from MySQL.com and changed my data-sources.xml to look like this:
Â Â Â <data-source
Â Â Â Â Â Â Â name="RussellBeattieDS"
Â Â Â Â Â Â Â location="jdbc/RussellBeattiePooledDS"
Â Â Â Â Â Â Â class="com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource"
Â Â Â Â Â Â Â max-connections="20"
Â Â Â Â Â Â Â min-connections="2"
Â Â Â Â Â Â Â inactivity-timeout="20"
Â Â Â Â Â Â Â wait-timeout="10"
Â Â Â Â Â Â Â username="CHANGEME"
Â Â Â Â Â Â Â password="CHANGEME"
Â Â Â Â Â Â Â host="localhost"
Â Â Â >
Â Â Â Â <property name="databaseName" value="CHANGEME"/>
Â Â Â Â </data-source>