私は常に、mysql_close()、Propel :: close()などのデータベース/ ORMに関係なく、データベース接続を閉じることが常に良い習慣であると想定していました。
私の他の質問の1つとインターネットに関する他のいくつかの調査を参照すると、ほとんどの人が、要求後に接続が常に閉じられるため、接続を閉じても問題ないと推奨しているという驚くべき顔を知りました。
しかし、私はそれらの答えを消化するのが少し難しいと感じています。理由は、すべてのDB lib、ORMがcloseメソッドを提供する理由です。そこにある場合は、すべてのORM / libで、それをうまく利用する必要があります。
誰かがどのような状況でいくつかの光を当てることができますか?DB接続を閉じるためにcloseメソッドを使用する必要がありますか?&これらのメソッドがまったく役に立たない場合、なぜそれらがすべてのデータベースライブラリ/ORMに存在するのですか?
編集
私の結論
それはBondyeとFluffehの間の良い議論であり、接続を閉じることの使用についての私の疑問を解消しました。両方に感謝します。
- スクリプトの持続時間が100ミリ秒未満であると予想される場合は、わざわざ接続を閉じないでください。
- ただし、スクリプトがより長く続くことが予想され、最後のDB操作とスクリプトの終了の間に時間がかかる場合は、* close()を呼び出して他のユーザーの接続を解放してください。
両方の答えがその場所で正しいので、私が1つの答えを受け入れることは本当に非常に難しいです。それが一番上にとどまるように、すべてのコメントで答えを受け入れるだけです。しかし、両方の正解に+1します。