Toon posts:

[php/mysql] mysql_close(): gebruiken?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Is het mooier/netter/sneller om mysql_close aan te roepen aan het einde van je script?

Verwijderd

Ja, maar anders doet php het zelf. Het is dus alleen correcter :).

Verwijderd

Op dinsdag 16 juli 2002 14:43 schreef zwaard het volgende:
Is het mooier/netter/sneller om mysql_close aan te roepen aan het einde van je script?
Als je mysql_pconnect gebruikt word de verbinding niet gesloten

  • Infinitive
  • Registratie: Maart 2001
  • Laatst online: 10-08 15:15
Als je mysql_pconnect gebruikt word de verbinding niet gesloten
hoeft niet perse(zie php manual chapter 22).
Maar heeft niet zoveel zin om mysql_close te gebruiken als je mysql_pconnect gebruikt.

putStr $ map (x -> chr $ round $ 21/2 * x^3 - 92 * x^2 + 503/2 * x - 105) [1..4]


  • dusty
  • Registratie: Mei 2000
  • Laatst online: 21-02 00:06

dusty

Celebrate Life!

Het is mooier, Het is netter, Het is ook sneller.

Het is mooier, Je zet zelf de connectie open (of het nou Pconnect is of niet), dus met het sluiten weet je ook dat je alles netjes sluit. (Je kunt het immers gewoon tellen aantal open == aantal sluit)

Het is netter. Immers weet je precies waar de connectie open gaat en waar gesloten wordt. Je berust niet zoveel op de correctheid van de PHP engine.

Het is sneller, de engine hoeft niet zelf te gaan kijken welke resources nog open staan, wat voor resources dat is, en dan zelf de connectie af te sluiten.

* dusty wacht op een domme opmerking van iemand. . . . .

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR


Verwijderd

Op dinsdag 16 juli 2002 21:37 schreef dusty het volgende:
* dusty wacht op een domme opmerking van iemand. . . . .
Dat kan geregeld worden :) Het is niet nodig, als je lui kunt zijn dan doe je dat ook :P

of had je hem nog dommer gewild?

  • dusty
  • Registratie: Mei 2000
  • Laatst online: 21-02 00:06

dusty

Celebrate Life!

Op dinsdag 16 juli 2002 21:39 schreef RobinVR het volgende:

[..]

Dat kan geregeld worden :) Het is niet nodig, als je lui kunt zijn dan doe je dat ook :P

of had je hem nog dommer gewild?
Jij bent t.net crew.. jij weet niet beter :+

Ik wil um inderdaad nog dommer :+

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR


  • DRvDijk
  • Registratie: Juni 2001
  • Laatst online: 12-02 15:52
Auwww lekker :D ROTFLMAO wheeeehehehehe

Eehm okee, nog dommer..
Moet je dan niet eerst controleren of de verbinding nog wel openstaat voordat je um closed?

Eehm...
Wat heb je er nou aan de verbinding te sluiten dan?

Hmm nog meer doms.. Lastig lastig lastig
Waarom is het netter? M'n PHP-bestand wordt er alleen nog maar groter van

:+ Heerlijk zo'n halve flame :P
En nou maar hopen dat ze er niet achter komen dat er een domme opmerking van mij is weggesnoeid :+

  • Vigory
  • Registratie: November 2000
  • Laatst online: 15-04 10:26
Op dinsdag 16 juli 2002 21:37 schreef dusty het volgende:
Het is sneller, de engine hoeft niet zelf te gaan kijken welke resources nog open staan, wat voor resources dat is, en dan zelf de connectie af te sluiten.

* dusty wacht op een domme opmerking van iemand. . . . .
De PHP engine kijkt toch ALTIJD welke resources nog open staan? Het lijkt mij dus alleen maar langzamer want er moet meer PHP code geparsed worden. Of heb ik nu die domme opmerking gescored?

  • Infinitive
  • Registratie: Maart 2001
  • Laatst online: 10-08 15:15
Het is ook sneller.
...
(of het nou Pconnect is of niet)
...
Het is sneller, de engine hoeft niet zelf te gaan kijken welke resources nog open staan, wat voor resources dat is, en dan zelf de connectie af te sluiten.
* dusty wacht op een domme opmerking van iemand. . . . .
Het hele idee van pconnect() is dat je de verbinding juist open probeerd te houden, zodat indien mogelijk, anderen van deze verbinding gebruik kunnen maken om connection overhead te besparen. Het netjes sluiten wil je dus hier eigenlijk niet.

Resource checking haalt geen bal uit op de snelheid, want de php engine zal deze checks altijd al wel uitvoeren. Bovendien, die checks zijn in verhoudig tot al het andere werk natuurlijk te verwaarlozen.

In geval van mysql_connect is het wel netter om mysql_close te gebruiken... en daarom wel aan te raden om te doen.

putStr $ map (x -> chr $ round $ 21/2 * x^3 - 92 * x^2 + 503/2 * x - 105) [1..4]


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

dusty:
Het is mooier, Het is netter, Het is ook sneller.

Het is mooier, Je zet zelf de connectie open (of het nou Pconnect is of niet), dus met het sluiten weet je ook dat je alles netjes sluit. (Je kunt het immers gewoon tellen aantal open == aantal sluit)
En toch staat er duidelijk in de manual dat 't niet uitmaakt. Nou staan er wel meer rare dingen in de manual, maar hier ben ik het toch niet met je eens.
Het is netter. Immers weet je precies waar de connectie open gaat en waar gesloten wordt. Je berust niet zoveel op de correctheid van de PHP engine.
Dat lijkt me een beetje een vreemd uitgangspunt. Als ik niet zou berusten op de correctheid van de PHP engine, waarom zou ik er dan uberhaupt vanuit gaan dat alles wat ik schrijf in PHP wel op een goede manier wordt gedaan?
Het is sneller, de engine hoeft niet zelf te gaan kijken welke resources nog open staan, wat voor resources dat is, en dan zelf de connectie af te sluiten.
Nou, en ik ben het er lekker niet mee eens.
PHP Manual / Types / Resource / Freeing Resources
Due to the reference-counting system introduced with PHP4's Zend-engine, it is automatically detected when a resource is no longer referred to (just like Java). When this is the case, all resources that were in use for this resource are made free by the garbage collector. For this reason, it is rarely ever necessary to free the memory manually by using some free_result function.
Als wat dusty over snelheid zegt waar is, dan betekent dat bijvoorbeeld in Java dat het ook sneller is om na elk object wat je dereferenced (obj=null) de Garbage Collector aan 't werk te zetten.

En nou snap ik wel waarom je dit zegt, dusty, want je wilt de touwtjes in handen houden. Da's een goeie eigenschap, maar als er duidelijk wordt verteld dat 't niet uitmaakt, waarom zou je moeilijk doen? Ik denk dat je wat dat betreft juist wel mag berusten op de correctheid van de PHP engine.

Overigens kan het imo geen kwaad als je wel mysql_close () gebruikt...
* dusty wacht op een domme opmerking van iemand. . . . .
tada :)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

De tijd die je een connectie open laat telt natuurlijk ook mee.
Als jij direct na je queries de connectie sluit en dan nog wat rekenwerk doet vs je connectie laten sluiten op het moment dat je al je rekenwerk gedaan hebt...
Scheelt, zeker bij Oracle e.d. nogal in de resources op de DB-doos.

Als de php-engine daar geen verschil in gedrag bij toont is dat imho een minpunt van php.

Een punt dat dusty verder niet noemt :)
Pagina: 1