sql >> データベース >  >> RDS >> Mysql

TomEEのJDBC接続プールでDB接続が停止するのを回避するにはどうすればよいですか?

    resources.xmlを正常に使用しています 私のWEB-INF 私の本番プロジェクトのこれに似たフォルダ:

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
    <Resource id="mysql-jdbc-jta-resource-stg" type="javax.sql.DataSource">
        JtaManaged = true
        DataSourceCreator = tomcat
    
        validationQuery = SELECT 1
        initialSize = 2
        removeAbandoned = true
        removeAbandonedTimeout = 120
    
        driverClassName = com.mysql.jdbc.Driver
        url = jdbc:mysql://db-stg.bar.someRegion.rds.amazonaws.com/someDBname
        username = your-username
        password = your-pw
    </Resource>
    </resources>
    

    重要な違いの1つは、DataSourceCreator = tomcatを使用することです。 。これにより、TomEEは、接続の検証( "SELECT 1")を処理するプールを作成し、停止した/古い接続を削除して、バックグラウンドでリソースを解放します。

    対照的に、DataSourceCreator = dbpc (これはデフォルト 設定されていない場合:「デフォルトで提供されるプールはDBCPです... ")説明/経験したとおりに動作しました(タイムアウトなど)。関連ドキュメント さらなる違いについて。

    =にも注意してください 私の作業構成で使用されています。以前のTomEEリリースでは、=がなくても機能するように見えることがわかりました。 。ただし、=で構成することをお勧めします ターゲットアプリケーションサーバーがTomEE1.7.2以降の場合は一貫して。

    これに関する詳細は、データソースの構成 にも記載されています。 ページ。

    お役に立てば幸いです。




    1. OracleSQLクエリで角かっこで囲まれた文字列を抽出する方法

    2. データがない(すべての値がNULLである)列を見つける方法は?

    3. OracleSQL-2つの日付から月までのユーザーを選択します

    4. MariaDB POWER()の説明