2011-07-15 35 views
0

次の問題があります。
- IBM WebSphere AS(WAS v.7.0.0.7)に配置されたstrutsベースの音声XMLを生成するJava Webアプリケーション。
- このアプリケーションはAxis2 java-v.1.5 - Webサービスクライアントを使用してWebLogicサービスを呼び出します。
- 私が使用して1000年msにタイムアウトを設定:約7同時呼び出し - - アプリケーションは、Webサービスは約25,000時間あたりでヒット回数の最大値タイムアウト後のAxis2 Java Webサービスクライアントの問題

stub.getServiceClient().getOptions().setTimeOutInMilliSeconds(1000); 



- Webサービスを呼び出すコードをtry-catchブロックに入れた後、例外を捕捉してメソッドから戻ります。なぜなら、タイマーの時間あたりの有効期限が切れるのいずれかの接続を開いたり、Webサービスの呼び出し の結果読んで - -
- 平均して、約200例外がスローされます - WASに

exception.getMessage(); 

をロギングすることでは、私はどちらかの取得

org.apache.commons.httpclient.ConnectTimeoutException: The host did not accept the connection within timeout of 60000 ms 

または

org.apache.axis2.AxisFault: Read timed out 

:以下、主に最初の- 問題がしばらくしてから、アプリケーションサーバーがハングしたり、受信した要求に応答したり、応答したりしてアプリケーションサーバーを再起動すると、10日で約3回発生します。
- ログを調べると、タイムアウトの期限が切れたために検出された例外を除いて何も見つかりませんでした。多分もっと多くのことがありますが、まだ見つかりませんでした。


- 上記のシナリオで考慮すべきガイドラインはありますか?それがなければ、私は接続を解放するために書くことができるクリーンアップコードはありますか?上記の説明から問題の根本的な原因を特定できますか?アプリケーションサーバーの動作は「正常」ですか?


私は長い記述/質問についてお詫び申し上げます。いつも助けていただきありがとうございます。

答えて

0

私が理解するところでは、tineoutエラーがサーバーから60000msとして報告されています。偶然にも、この60秒はIBM IHSサーバーのデフォルトのタイムアウトです。そのため、問題はそれでもよいでしょう。

サーバー上で処理するために、60秒以上を取るためにあなたの要求はあなたがのために/opt/WebSphere70/Plugin/config/SERVERNAME/plugin-cfg.xml

ルックを編集することによって、このタイムアウトを増やすことができますしたいと仮定すると、 ServerIOTimeout = "60"に設定し、値を60秒以上に変更します。

あなたにも管理コンソールを経由して、この設定を表示することができます

[編集] ...

サーバー> Webサーバー>サーバー名>のプロパティプラグイン

関連する問題