2011-09-16 5 views
1

PHPクラスがありますが、どの言語でも関係があります。クエリーがあるたびにMySQLサーバーへの接続を開きます。スクリプトによっては、実行ごとに1回、同じ実行で4回または5回までの異なるクエリまでdbをクエリします。MySQL Connect "コスト"?

クエリが実行されるたびに(スクリプトの実行中は開いたままにして)接続を閉じた場合、MySQLサーバー上でどのくらい悪いかを知る方法はありますか?

私はドキュメントを読んでみましたが、パフォーマンスと負荷の面でどちらが悪いのか分かりませんでした。

ありがとうございます!

+0

興味深い質問ですが、なぜ最初の場所で接続を閉じますか? –

+0

好奇心が強い:_Why_あなたはすべての単一のクエリの後に接続を閉じますか? – KingCrunch

+0

明示的に接続を終了しても、スクリプトの実行後に多くのスリープ接続が発生しています。これらのスリープ接続が残っていると、接続の問題が多すぎることがあります。 (私たちは2000のオープンな接続を許可していますが、それはまだ実行されていません - 必ずしもそうではありませんが、それを問題にするには十分です)。 – ajacian81

答えて

3

ためNO理由を参照してください。

通常、データベース接続の有効期間を延長し、要求間で開いたままにして再利用できるようにします。 のデータベースに再接続すると、クエリはと非常にとなります。

2

最初のクエリで一度だけ接続し、ページの最後に閉じてください(PHPは自動的にこれを自動的に行います)。毎回接続を閉じて再オープンすることでオーバーヘッドを増やすのはなぜですか?

1

接続は、(PHP)とMySqlサーバー間の追加の不要な接続ですので、接続を開いたり閉じたりする必要があります。したがって、クエリが実行されるたびに接続を閉じないでください。

はまた、私は、データベース接続を作成すると、いくつかの時間がかかり、パフォーマンスのためにかなり悪いということ