[Seasar-user:18680] [S2Axis2]SAStrutsのAcitonから呼び出した際にソケットクローズされない

秋山 俊郎 [E-MAIL ADDRESS DELETED]
2009年 10月 20日 (火) 01:01:12 JST


秋山です。

SAStrutsアクションクラス内のS2Axis2クライアントからWebサービスへアクセス
しアクションクラスのメソッドが終了してもソケットのCLOSE_WAITが残るので良
い回避策があれば教えていただけないでしょうか?

ソースを追うとWebサービスの性能向上のためcommons-httpclient内でコネク
ションを使いまわすようなつくりになっているようです。そのためソケットク
ローズが走っていないようです。

http://ametie.mokuren.ne.jp/wiki/dodobon/index.php?Jakarta%20Commons%20HTTP%20Client%20%E5%85%A5%E9%96%80
などのサンプルで試してみてもプロセスが終了するまで完全にはソケットがク
ローズしないようです。

s2axis2クライアント呼び出し側の設定等で回避できるものでしょうか?
そうでなければ
commons-httpclientにclose処理を入れるか
サービス側の前段Apacheでキープアライブの設定で
逃げるかということになるかと思います。
(あるいはcommons-httpclient Ver4?を試してみる?)

クライアント側:
sa-struts-1.0.4-sp6(クールデプロイ)
s2はすべて2.4.39
s2axis2 0.5.0
commons-httpclient-3.0.1
Tomcat6
Linux

ウェブサービス側:
前段Apache+Tomcat6+s2axis2
Linux

以上よろしくお願いいたします。









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