db connection - altid åben?

Tags:    php

Hej udviklere! :)

I starten, da jeg læste de mange newbies tutorials, fik jeg gang på gang at vide "Husk at lukke forbindelsen efter brug"...

Men efterhånde, har jeg set mange steder også i større projekter, at database connectionen åbnes i starten, og får lov til at kører. Jeg har altid haft et par funktioner i baghånden
function openmysql() <- åbner mysql m. host,user,pass osv.
function closemysql() <- lukker mysql..

og brugt de 2 funktioner hver gang, jeg skulle hente noget ud af databasen. f.eks.
Fold kodeboks ind/udKode 



Men kan det overhovedet betale sig, at åbne og lukke hele tiden... ?

Jeg spekulerde meget over, hvordan jeg skulle lave sådanne funktioner til php PEAR -> DB

Men så kom jeg i tviel`?

- Hvad er hurtigest?
- Hvad er mest praktisk?

Hvad bruger i? og hvad er jeres erfaring?



Indlæg senest redigeret d. 21.03.2006 19:41 af Bruger #8222
Altså som regel siger man at det er god kode skik at huske at lukke forbindelsen efter sig...

Men egentlig er det ikke nødvendigt...

Den lukker selv efter et lille stykke tid, kan ikke lige huske hvorlang tid.

Jeg bruger selv lignende fukntioner som du skriver til at åbne og lukke, og det gør jeg altid...

Bare min erfaring...



Du skal endelig ikke åbne og lukke efter hver enkel query.
Det er ikke nødvendigt at lukke mysql forbindelsen i bunden af din kode.
Mysql forbindelsen vil lukke af sig selv når siden er færdig.
Åben forbindelsen i starten, det er fint nok.



Hvad der er det "rigtige" at gøre afhænger af bl.a. antal brugere, database serveren, database softwaren og hvad du har sat persistent connections indstillingen til i din php.ini.

Selv om man generelt ikke kan sige noget generelt, er det generelt bedst altid at lukke efter sig.
Om ikke andet så for god stil.



Okay.. det vil sige, der er ingen rigtig konklusion?



Konklussionen er at du ikke skal lukke efter hver enkel query.
Du behøver ikke at lukke i bunden, men ja, for god stil, så gør det...



t