[akabana-user:166] Re: 1ファンクションで複数のサービスをリクエストしたら…

KOMON Kazuya [E-MAIL ADDRESS DELETED]
2007年 12月 26日 (水) 13:45:31 JST


本件、ちょっと空いちゃいましたが事の顛末です。

arkwさんと別スレッドでやりとりした結果、

 S2Flex2Serviceクラスの428行目:
 if (_con == null || !_con.connected)

の部分に問題があるということに至りました。

具体的には、現状のこの使い方は connected が文字通り「接続された」
という意味合いで使われています。しかしながら、NetConnectionのAPIに
よると、connectedは、
 ・永続的なRTMP接続を介して鯖に接続されたら→true
 ・それ以外の方法で鯖に接続されたら→false
ということになり、このままでは常にinitConnection();が動いてしまう
ことに気付きました。

よって、最新のs2flex2-componentsでは、if (_con == null) のみに
修正してもらっています。


で、その結果こちらで色々と試してみました。

結論から言うと、大幅に改善はされたが完全ではない、ということです。

酷いときは2度に1度くらいの割合で落ちていたのが

・HotDeploy時:平均100〜700回に1回(ばらつき多し)
・CoolDeploy時:平均1500〜4000回に1回(エラーを重ねるとだんだん安定してくるw)

という具合に改善されます。(しかし、まだ落ちる)

ちなみに、こちらもIEのみの現象となるのですが、IEのコネクション数
最大2つという問題なのかなと思って、1度に3,4つのリクエストを投げる
ものをやってみましたが、結果は2つの時と変わりありませんでした。

ということで、ひとまず現状の報告です。

>nobuさん
すみませんレス遅くなりまして。例外は出ないんですよー。
黙って、サーバはHTTP Status:200で返事をしているのに、
クライアントサイドにてNetConnetion.Call.Failedが出ちゃうのです。

以上



--- In message --- 
  2007/12/15 01:49
  "nobu <[E-MAIL ADDRESS DELETED]>" wrote:

> 近藤(nobu)です。
> 
> ずいぶん前のトピですが、症状同じですかね?
> 
> ■ほぼ同時リクエスト?したときに例外が発生します
> http://ml.seasar.org/archives/akabana-user/2007-March/000100.html
> 
> Hot DeployをCool Deployにしてみると大丈夫だったりしませんか?
> 
> 
> 
> KOMON Kazuya さんは書きました:
> > 公門です。
> > 
> > なかなか刺激的な罠を見つけてしまったかもしれません。
> > 
> > 掲題の通りなのですが、Flex側で1つのファンクションの中に
> > 複数のJavaへのリクエストを書き実行すると、どちらかのレスポンスが
> > 落ちてしまうのです。
> > 但し、NetStatusEventの中身を見てみると、HTTP Status:200 なのです。
> > つまり、サーバは正常にレスポンスを返しているはずなのです。
> > 
> > 色々と試したところ、どうやらマシンによって発生頻度が変わります。
> > うちの会社でためしたところ、
> >  ・ThinkPad T42 では、各自メモリ量は異なるのですが、数十〜100回あたりの単位で発生
> >  ・DELLのコアツー1.86Gでメモリ1.5Gでも、ヒドイときには2回に1回ぐらいで発生
> > てな具合で、要はクライアントマシンによって結構変わるということです。
> > とくにローカルでサーバ立ててるときよりも、他PCからやると頻度が高いです。
> > (逆にローカルサーバの場合、3000回やっても大丈夫でした)
> >   →こんなところで、QTP for Flex2 が役立ったり(笑)
> > 
> > ちなみに、FlashPlayerも 9.0.28, 9.0.47, 9.0.115 で試しましたが、
> > 有意性のある傾向はありませんでした。
> > 
> > また、FireFoxではいまのところおこってません。
> > 
> > というわけで、FlashPlayerを限りなく疑ってるところではあります。
> > このあと、FDSでも試してみようと思います。
> > 
> > 添付に再現のMXMLとServiceを付けてみました。
> > もうちょっとこちらでも調べてますが、何かご存知の方がいらっしゃいましたら助かります。
> > 
> > まずは、情報共有まで。
> > 
> > 
> > ------------------------------------------------------------------------
> > 
> > _______________________________________________
> > akabana-user mailing list
> > [E-MAIL ADDRESS DELETED]
> > https://ml.seasar.org/mailman/listinfo/akabana-user
> 
> _______________________________________________
> akabana-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/akabana-user


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