ホームページ >データベース >mysql チュートリアル >開くか閉じる: データベース接続はいつ管理する必要がありますか?

開くか閉じる: データベース接続はいつ管理する必要がありますか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-02 23:51:29452ブラウズ

To Open or To Close: When Should You Manage Your Database Connection?

データベース接続を開いたり閉じたりするタイミング

データベース接続を必要とするアプリケーションでは、データベース接続を継続的に開いたままにしておくべきか、それとも常に開いたり閉じたりすべきかというジレンマが生じます。必要ですか?

パフォーマンスのためにクローズされた接続

データベース接続を開くと、パフォーマンスのオーバーヘッドが発生します。したがって、接続を長時間開いたままにすると、システム リソースに負担がかかる可能性があります。対照的に、必要な場合にのみ接続を開いたり閉じたりすると、パフォーマンスの低下が最小限に抑えられます。

コード例:

Java 7 より前:

<code class="java">Connection con = null;
try {
    con = ... //retrieve the database connection
    //do your work...
} catch (SQLException e) {
    //handle the exception
} finally {
    try {
        if (con != null) {
            con.close();
        }
    } catch (SQLException shouldNotHandleMe) {
        //...
    }
}</code>

Java 7:

<code class="java">try (Connection con = ...) {
} catch (SQLException e) {
}
//no need to call Connection#close since now Connection interface extends Autocloseable</code>

データベース接続プールを使用して効率を高める

データベース接続を手動で開閉するのは面倒な場合がありますそして高価です。パフォーマンスを最適化するには、接続プールの使用を検討してください。このプールは確立された接続のプールを維持するため、コストのかかる接続の確立と終了が不要になります。プール内の接続を閉じると、その接続は「スリープ」モードに入り、今後も使用できるようになります。

関連リソース:

  • Java 接続プーリング
  • データベース接続プーリング ツール:

    • BoneCP
    • c3po
    • Apache Commons DBCP
    • HikariCP

以上が開くか閉じる: データベース接続はいつ管理する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。