[Seasar-user:9338] Re: 高負荷時のDBアクセスについて

Umebayashi Tsuyoshi [E-MAIL ADDRESS DELETED]
2007年 7月 21日 (土) 10:41:09 JST


梅林です。

ありがとうございます。
コネクションプールの設定と
queryTimeoutの設定を行い
もう一度負荷をかけて確認してみます。

ありがとうございました!

----- Original Message ----- 
From: "Koichi Kobayashi" <[E-MAIL ADDRESS DELETED]>
To: <[E-MAIL ADDRESS DELETED]>
Sent: Friday, July 20, 2007 6:30 AM
Subject: [Seasar-user:9271] Re: 高負荷時のDBアクセスについて


> 小林 (koichik) です.
>
> Date:    Fri, 20 Jul 2007 03:27:22 +0900
> From:    "Umebayashi Tsuyoshi" <[E-MAIL ADDRESS DELETED]>
> To:      <[E-MAIL ADDRESS DELETED]>
> Subject: [Seasar-user:9269] 高負荷時のDBアクセスについて
>
>> 高負荷(大量アクセス)時にDBへアクセスが行えないという現象が発生し
>> 調査をおこなっていたところ、frameworkが書き出しているログを
>> 見るとコネクションプールの取得を行い
>> SQLを投げる手前で処理が止まっているように見受けられます。
>
> とのことですが,
>
>> 【正常な時】
>> 1.論理的なコネクションを取得しました
>> 2.論理的なコネクションを閉じました
>> 3.SQL文
>
> このログの出方ですが,SQL がコネクションを
> 閉じた後に発行されるはずがないので,実際は
>
> 【正常な時】
> 1.論理的なコネクションを取得しました
> 2.(SQL 実行)
> 3.論理的なコネクションを閉じました
> 4.SQL文 ログ出力
>
> となっているはずで,とすると,
>
>> 【異常な時】
>> 1.論理的なコネクションを取得しました
>>
>> ↑ ここで止まる
>
> も実際は
>
> 【異常な時】
> 1.論理的なコネクションを取得しました
> 2.(SQL 実行)
> ↑ ここで止まる
>
> となっているのではないかと.
> まずは DB サーバ側の CPU 利用率とか確認してみては
> いかがでしょうか.
> もし DB サーバの能力以上に多くのトランザクションが
> 実行されているなら,コネクションプールの接続数の上限を
> DB サーバの能力に見合った値に設定してください.
>
>> また、SQLの応答が得られなかった時はタイムアウトさせたいとのですが
>> そのようなことは可能なのでしょうか?
>
> Seasar2.3.21 以降または Seasar2.4.14 以降であれば,
> ConfigurableStatementFactory を使うことで
> タイムアウト時間を設定することができます.
> Seasar2.3 なら j2ee.dicon,Seasar2.4 なら jdbc.dicon に
>
> <component 
> class="org.seasar.extension.jdbc.impl.ConfigurableStatementFactory">
>  <arg>
>    <component class="org.seasar.dao.pager.PagerStatementFactory"/>
>  </arg>
>  <property name="queryTimeout">60</property>
> </component>
>
> のように秒単位で指定できるようです.
> 自分は試したことがないので JDBC ドライバがどの程度
> ちゃんと機能するのか知りませんが.
> # 昔々,Oracle では設定した時間より遥かに長い時間
> # タイムアウトしないという話を聞いた気がしますが,
> # これも最近のドライバでは大丈夫だったりするのかなぁ?
>
>
> -- 
> <component name="koichik">
>    <property name="fullName">"Koichi Kobayashi"</property>
>    <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
>    <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
> </component>
>
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user 




Seasar-user メーリングリストの案内