Mmm... I might have been talking rubbish in my last post, but I want to get clear how this works. When is a connection created and when is it destroyed? Is a persistent connection for the site or per session, or what? I just did a 'show processlist' on my server and got this...
+-----+------------+-----------+--------+---------+------+-------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+-----+------------+-----------+--------+---------+------+-------+------------------+
| 109 | ctiuser | localhost | cti | Sleep | 2196 | | NULL |
| 110 | ctiuser | localhost | cti | Sleep | 2251 | | NULL |
| 111 | ctiuser | localhost | cti | Sleep | 1474 | | NULL |
| 112 | ctiuser | localhost | cti | Sleep | 1173 | | NULL |
| 113 | ctiuser | localhost | cti | Sleep | 2074 | | NULL |
| 114 | moodleuser | localhost | medlaw | Sleep | 237 | | NULL |
| 115 | moodleuser | localhost | medlaw | Sleep | 255 | | NULL |
| 116 | moodleuser | localhost | medlaw | Sleep | 250 | | NULL |
| 117 | moodleuser | localhost | medlaw | Sleep | 280 | | NULL |
| 118 | moodleuser | localhost | medlaw | Sleep | 182 | | NULL |
| 119 | ctiuser | localhost | cti | Sleep | 572 | | NULL |
| 120 | ctiuser | localhost | cti | Sleep | 874 | | NULL |
| 121 | ctiuser | localhost | cti | Sleep | 274 | | NULL |
| 122 | moodleuser | localhost | medlaw | Sleep | 182 | | NULL |
| 123 | moodleuser | localhost | medlaw | Sleep | 161 | | NULL |
| 124 | ctiuser | localhost | cti | Sleep | 1773 | | NULL |
| 125 | moodleuser | localhost | medlaw | Sleep | 244 | | NULL |
| 126 | moodleuser | localhost | medlaw | Sleep | 244 | | NULL |
| 127 | ctiuser | localhost | cti | Sleep | 2250 | | NULL |
| 128 | moodleuser | localhost | medlaw | Sleep | 256 | | NULL |
| 129 | moodleuser | localhost | medlaw | Sleep | 250 | | NULL |
| 130 | ctiuser | localhost | cti | Sleep | 2259 | | NULL |
| 136 | root | localhost | NULL | Query | 0 | NULL | show processlist |
+-----+------------+-----------+--------+---------+------+-------+------------------+
Each user is for a different moodle install. Those sleep times sem high, especially considering the time of day when I wouldn't expect anything to be particularly busy.
From my J2EE experience, we would normally sort something like this out with a database connection pool with a fixed number of connections per 'site'. I have never used adodb myself so only have a slight familiarity with it, so does it implement pools and if not what does it do?
Lots of questions