phpbar.de logo

Mailinglisten-Archive

[php] Re: php Funktionen und DB-Connect

[php] Re: php Funktionen und DB-Connect

Joerg Behrens behrens_(at)_noell.de
Wed, 02 Feb 2000 10:36:42 +0100


From: "Andreas Zaugg - CAB Services AG" <webmaster_(at)_cabag.ch>
> Ich habe eine
> for($i=0... schleife
> und rufe von dort aus eine Funktion auf.
> In der Funktion mache ich eine Abfrage auf die DB
> 
> Was ist jetzt besser:
> - Ich Connecte in der Funktion (Mehrmals connecten und wieder schliessen)
> oder
> - Ich connecte VOR der for Schleife und schliesse erst wieder nach der
> Schleife
> 
> Was macht hier mehr Sinn und was belastet den Server am meisten?


Definitiv dein 2er Punkt macht mehr Sinn. Jenach verwendetem
Datenbanktyp wuerde bei deiner ersten Version riesige Resourcen
verbraucht wuerden. Oracle wuppt bei mir mit 22MB pro anfrage... man
stelle sich das mal in einer schleife vor nur um 20 Datensaetze
anzuzeigen...aarrgghh! Hinzu kommen wuerde dann auch noch das bei
gleichzeitigem Zugriff auf die Datenbank der "Watermark" steigen
koennte. Mit "Watermark" sind die gleichzeitigen Verbindungen gemeint
und daraus ergeben sich sapeter einmal die Lizenzzahlungen. Kann ein
teuerer Spass werden.

Eine weitere Moeglichkeit (sofern von der DB und PHP unterstuetzt zb.
Mysql,Oracle,Postgre usw.) waeren "persistent" Verbindungen.
Standardmaessig werden ja die Datenbankverb. nach Ablauf deines Scripts
automatisch beendet. Unter Verwendung einer staendigen ("persistent")
Verbindung bleibt der Connect erhalten und die Anmeldeprozedur beim
nachste Aufruf entfaellt und hier stellt sich dann er
Geschwindigkeitsvorteil fuer dich ein. Nachteil: Laeuft nur wenn als
Apachemodul und nicht in der CGI-Version. Wenn wenig Verkehr auf deiner
Seite ist belastest du deinen Webserver mit einer zusaetzelichen
Verbindung die ja nur selten Gebraucht wird.

Gruss 
Joerg Behrens
-- 
Key fingerprint =  92 7D E0 A6 CF AE EC 32  14 28 EF 0D 57 2A 88 5B
----------------------------------------------------------------------
Preussag Noell Dienstleistungs GmbH
D-97080 Wuerzburg				Mobil: 0171/60 57 963
Alfred-Nobel-Straße 20				Tel: +49 931 903-2243
Abt: DV-C/tr					Fax: +49 931 903-2051


php::bar PHP Wiki   -   Listenarchive