S2JDBCからMySQLに接続する際にコネクションタイムアウトを設定する方法
今回は、S2JDBCからMySQLに接続する際に、コネクションタイムアウトを設定する方法を紹介する。
方法としては、「jdbc.dicon」の
タイムアウトの待ち時間の単位は、MySQLの公式ページでは「ミリ秒」となっているが、筆者の環境で検証した時は、「100分の1秒」で動作した。
つまり、2秒に設定したい場合は、公式ページ通りであれば「2000」と設定するべきであるが、検証環境では「200」と設定することで、意図した動作となった。
この事がどの環境でも起こるかは、詳しく調査できていないが、値を設定する場合は、しっかり検証することをお勧めする。
<component name="xaDataSource" class="org.seasar.extension.dbcp.impl.XADataSourceImpl"> <property name="driverClassName"> "com.mysql.jdbc.Driver" </property> <property name="URL"> "jdbc:mysql://192.168.0.3:3306/SAMPLE_DB" </property> <property name="user">"sample"</property> <property name="password">"samplepass"</property> </component>
<component name="xaDataSource" class="org.seasar.extension.dbcp.impl.XADataSourceImpl"> <property name="driverClassName"> "com.mysql.jdbc.Driver" </property> <property name="URL"> "jdbc:mysql://192.168.0.3:3306/SAMPLE_DB?connectTimeout=200" </property> <!-- ↑↑ ポイント ↑↑ --> <property name="user">"sample"</property> <property name="password">"samplepass"</property> </component>