Mailinglisten-Archive |
Hi! Wenn Du wie unten beispielhaft angegeben mehrere DB-Handler erzeugst, verbrauchen die auch entsprechend Speicher. Nach Laufzeitende des Skriptes wird der Speicherplatz für die Objekte in PHP wieder freigegeben. Da brauchst Du Dir keine Sorgen zu machen. Allerdings sorgt der Pconnect in der Mysql-Klasse der PHPLIB dafür, dass die Datenbank weiterhin Speicher für eine hergestellte Verbindung verbrät, die Du vermutlich nie wieder nutzen wirst. Wenn Du stattdessen 'connect' verwendest, umgehst Du das Problem. Warum benötigst Du eigentlich so viele DB-Handler _gleichzeitig_ ? In der Regel sendest Du Deine Queries doch sowieso sequentiell an die Datenbank. Es ist besser, das Abfrageergebnis in einer PHP-Variable zu speichern und mit dem gleichen DB-Handler die nächste Abfrage auszuführen. Falls Du zwei oder mehrere DB-Abfragen in Schleife verschachteln willst bzw. musst, solltest Du Dein DB-Design nochmal überdenken. Solche Strukturen solltest Du vermeiden, da sie in der Regel extrem unperformant sind. Gruss, Sascha broeker_(at)_snafu.de wrote: > > Wie genau funktioniert eigentlich die > Speicherverwaltung in folgender Sache? > > Ich kann ja in einer Seite verschiedene > DB-Instanzen öffnen ... > > $db1 = new DB_irgendwas; > $db2 = new DB_irgendwas; > $db3 = new DB_irgendwas; > $db4 = new DB_irgendwas; > $db5 = new DB_irgendwas; > ..
php::bar PHP Wiki - Listenarchive