詳細にドルイドのパラメータの設定
図1は、 接続を開始します
ドルイドコンフィギュレーションファイル、データベース接続、有するリーダデータソースビーンINIT =方法- 「INIT」を、接続プールを開始するときの設定は、初期化動作を実行しないであろう。例:
<ビーンID = "データソース"クラスは= "com.alibaba.druid.pool.DruidDataSource" INIT-方法= "INIT"破壊法は= "クローズ"> ...... </豆>
2 パラメータの構成と説明
春のコンフィギュレーションファイルによって、アプリケーションのcontext.xml DataSource設定の様々なパラメータを設定するための手順。
<豆のIDは= "データソース"クラス= "com.alibaba.druid.pool.DruidDataSourceは" INIT-方法"のinit"破壊-メソッド= "閉じる" => !"接続"基本的なプロパティのURL、ユーザー、パスワード- <を- > <! - JDBCのURL: <プロパティ名= "URL"の値= "jdbc_url" /> <プロパティ名= "ユーザ名"値= "$ {jdbc_user}" /> <プロパティ名= "パスワード"値= "$ {jdbc_password}" /> <! -開始ドルイド、接続を確立する同期N - > <プロパティ名= "INITIALSIZE"値= "100" /> <! - Nアクティブな接続プールまで接続- > <プロパティ名= "MAXACTIVEための"値= "1000" /> <!- - このプログラムは、すなわち、接続プールが使用可能な接続ではなく、無限のを待つために、ミリ秒単位で、要求操作を終了します-1、これに失敗したことを、この時間の後、この操作の接続プールの最大待ち時間への接続を要求します- > <プロパティ名= "MAXWAIT"値= "60000" /> <! -アイドル状態の接続機構の接続プールの回復、リサイクルと、2部からなるチェック- > < -チェックレンジ:! Nミリ秒単位で成長し、接続プールは、接続がアイドル状態のときに回復とみなされます。このパラメータは、検査・リカバリ・メカニズムの範囲を決定- > <プロパティ名=「minEvictableIdleTimeMillis」値= 300000 /> < -ミリ秒単位の周波数:!周波数チェックアイドル状態の接続を、チェック、非整数タイミングがチェックされません。- > <プロパティ名= "timeBetweenEvictionRunsMillis"値= -1 /> < - 1の制限を回復:!アイドル接続の回復を、少なくともNアイドル状態の接続のことを確認します- > <プロパティ名= "minIdle"値= 「20」/> <! -すべてのトランザクションがかどうかに関係なく、接続の実行されている場合は、オープンな接続は必須リサイクル、接続は、接続を閉じる必要があります後にN秒以内に取得するために必要な接続で必須のリサイクルプログラムは、そうでない場合ドルイドは、接続を中断せざるを得なくなります。- > <プロパティ名=「trueに」=値「removeAbandoned」/> <! -プログラムは、N秒以内に接続を閉じる必要があります取得するにすると、そうでない場合は、接続プールが合理的とみなされるために、それを殺すだろう値、無限の実行中のビジネスなし- > <プロパティ名=「removeAbandonedTimeoutを」値=「180」/> <! -すべての基本的なリレーショナルデータベースは、長い間アイドル状態の接続が切断される必須となります。しかし、この接続は、接続プールに残っています。> -これらのプログラムが壊れた接続が与えられます取得 可能な場合に、有効である以下の4つのパラメータは、接続を確認するために使用されている- - <!> <! -オープンな接続の有効性検出器をアイドル- > <プロパティ名= "testWhileIdle"値= / "真の"> <! - SQLの接続性を確認- > <プロパティ名を= "validationQuery"値= "SELECT 'X'" /> <! - 2次性能パラメータに影響を与え、お勧めできません- > <! -プログラムを取得する際に、接続プールを検出- > <プロパティ名=「testOnBorrow」値=「falseに」/> プログラムのリターン接続- <!接続を検出することがまだ有効である- > 「falseに」<プロパティ名=「testOnReturn」値= /> <! - PSCacheが開かれ、各接続PSCacheのサイズを指定します- > < <! -設定の監視統計にはフィルターをブロックし、属性の型が文字列、別名を介して設定の拡張機能があり、一般的なプラグインは以下のとおりです。フィルター付きの監視統計:STAT;フィルターでログインします:log4jの、防衛SQLインジェクションフィルタ:ウォール- > <プロパティ名= "フィルタ"値= "STAT、ウォール、SLF4J" /> <! - connectPropertiesで開くようにmergeSql機能は、属性、SQLレコード遅い- > <プロパティ名= "て、ConnectionProperties"値= "= druid.stat.mergeSql trueに、druid.stat.slowSqlMillis = 5000" /> </豆>
アリSLBを使用する場合は、2秒または負(クローズドチェック機構)に設定timeBetweenEvictionRunsMillisをお勧めします。それ以外の場合は、接続プロセスが報告されます。
トランザクションのJDBC接続を開くことができませんでした。ネストされた例外はcom.mysql.jdbc.exceptions.jdbc4.CommunicaiotnsExceptionです:通信リンク障害
作成:2019年8月5日18時35月