一度に2000のクライアントを処理していたマルチスレッドアプリケーション(サーバー)で作業しており、各スレッドでMySQLデータベースの個別のデータベース接続を開いています。そのため、接続プーリングを有効にしました。接続を使用した後、接続を閉じる必要がある多くのブロックを検索しました。その後、プールに戻り、他のスレッドで使用されます。一方で、接続には時間がかかるプロセスであることもわかっています。だから私の質問は、接続プールで接続を閉じる必要があるのはなぜですか。接続を開いたままにするか、閉じたままにするのが良いですか?
2 に答える
6
接続の確立は時間のかかるプロセスであることを私たちは知っています
正解-それが接続プールがある理由です。それらは接続を維持するので、新しい接続を作成しません。
接続プールで接続を閉じる必要があるのはなぜですか
したがって、それらはプールに戻され、他のスレッドで使用されます。
接続は高価なリソースであるため、できるだけ早く開いて使用し、閉じて、プールに戻り、他のスレッドで使用できるようにする必要があります。
于 2012-12-10T10:52:05.207 に答える
1
プールされている接続を「閉じる」と、接続が完了し、プールが再び使用できるようになります。
Closeを呼び出しても、接続が物理的に切断されることはありません。プールには、接続が物理的に閉じられるタイミングを決定する独自のロジックがあります。
于 2012-12-10T10:52:37.340 に答える