FB18 - Das Forum für Informatik

fb18.de / Off-Topic / Hard- und Softwarefragen

php, singleton, apache

php, singleton, apache 2007-06-17 19:31
joda_der_weise
Moin,

ich sitze gerade an meinem Entwurfsmuster und stutze an einer Stelle und stehe warhscheinlich gerade selber auf dem Schlauch:

Angenommen ich schreibe eine Klasse, die im Read-Context auf eine DB zugreift als singleton.
Dann heißt das doch, dass im Scope meines Skriptes diese Klasse genau einmal exisiteren kann, aber ein anderer Nutzer der Internetsite natürlich eine eigene DB-Verbindung kriegt.

Oder?????

RE: php, singleton, apache 2007-06-17 20:33
Popcorn
Wenn ich Dich richtig verstehe ja. Für jeden Nutzer wird eine eigene Instanz des Programms erzeugt und es müsste ja die gleiche Instanz sein, damit das Programm weiß, ob so ein Objekt schon erzeugt wurde.

RE: php, singleton, apache 2007-06-17 20:54
joda_der_weise
Ok,
ich hatte irgendwie ganz diffuse Sachen im Netz gefunden und die Alterntative wäre:

Es gibt genau(!) ein Exemplar der Klasse und diese gilt auch für alle (also teilen sich beispielsweise alle User die selbe DB-Connection)

Das schien mir sehr sehr unwahrscheinlich^^

RE: php, singleton, apache 2007-06-17 21:40
Muelli
naja. Die selbe Connectoin kann es uU ja auch tatsaechlich sein ;-)

mysql_pconnect() genau dazu da, die Connection noch eine Zeit offen zu halten und anderen zu geben, die eine Verbindung mit pconnect() anfordern… /nitpick

RE: php, singleton, apache 2007-06-18 14:49
Anonymer User
mysql_pconnect setzt aber vorraus, dass die Apache-Config extrem auf die aktuellen Bedürfnisse gezüchtet ist. Wenn dann mal ein unerwarteter User-Peak da ist kann es zum Angpass kommen…

Ausserdem, wer will schon dass die Verbnidung zur DB einfach mal so eine Zeit lang offen ist… ;)