プロキシを介したAjax通信の切断につきまして。

377 views
Skip to first unread message

chocol...@gmail.com

unread,
Mar 29, 2008, 4:25:52 PM3/29/08
to Google Web Toolkit in Japanese (GWTJP)
いつもお世話になっております。chocolatです。

WebApplicationで、GWTを利用しています。
ブラウザパフォーマンスの影響でGWT上で遷移するのを、
リンクでページ遷移して新たなGWTをロードするように3つにわけました。

環境
サーバ:RedHatLinux ES
java:1.6
アプリサーバ:tomcat6 または、jetty6
フレームワークはStrutsとhibernateのみ。
Ajax通信はJSONを採用。

現在の問題
プロキシを介した際、
ページ遷移した際に、Connection Closeが書き換えられてしまうので、
接続数がMAXになり固まってしまいます。
IEと、Operaのみです。
FFと、Safariは問題なく処理してくれます。
実装方法はページ遷移時に、Connection Closeをヘッダに書いているだけです。

解決策を調査しているのですが、
まだまだ初心者なので、調べきれておりません。

可能ならば、ブラウザからのFINを送ってもらうように
HTTPヘッダに値をセットできたらと思います。
HTTP1.1のプロトコル仕様も一通り目を通したのですが。。。


なにか情報、またはこうしたら解決しましたよと言う方がおられましたら、
御助言の方、よろしくお願い致します。

nod_chip

unread,
Mar 31, 2008, 12:16:17 AM3/31/08
to Google Web Toolkit in Japanese (GWTJP)
御無沙汰しております。nod_chipと申します。

> ブラウザパフォーマンスの影響でGWT上で遷移するのを、
> リンクでページ遷移して新たなGWTをロードするように3つにわけました。
この前提部分が気になります。
ブラウザパフォーマンスに問題が無ければページは1つで良いという事になるのでしょうか?
この部分についてもう少し詳しく教えていただけませんでしょうか?

> ページ遷移した際に、Connection Closeが書き換えられてしまうので、
> 接続数がMAXになり固まってしまいます。
自分はHTTPについてあまり詳しくは無いため定かではありませんが、
この部分はプロクシソフトウェアによってヘッダが書き換えられているために
起こってしまう問題のように思います。これは不可避かもしれません。

効果があるかどうかは分かりませんが、
ページ遷移の際に「Keep-Alive: timeout=1」等を設定して
早期にHTTP通信が閉じられるようにはできませんでしょうか?

On 3月30日, 午前5:25, "chocolat0...@gmail.com" <chocolat0...@gmail.com>
wrote:

小山准

unread,
Mar 31, 2008, 12:48:49 AM3/31/08
to gwt...@googlegroups.com
お世話になっております。chocolatです。

> > ブラウザパフォーマンスの影響でGWT上で遷移するのを、
> > リンクでページ遷移して新たなGWTをロードするように3つにわけました。
> この前提部分が気になります。
> ブラウザパフォーマンスに問題が無ければページは1つで良いという事になるのでしょうか?
> この部分についてもう少し詳しく教えていただけませんでしょうか?

詳しく言いますと、透過PINGや、スタイルシートでかなりUIを凝っていまして
IE(シェア1番なのに・・・)だけが、レンダリングでCPUが100近くまで取られてしまうために
できるだけ、分けるように致しました。
それが最良とは思いませんが、ただの逃げの策です。
IEのレンダリングが最適化できるのならば、1つに戻したいと思っております。

> 効果があるかどうかは分かりませんが、
> ページ遷移の際に「Keep-Alive: timeout=1」等を設定して
> 早期にHTTP通信が閉じられるようにはできませんでしょうか?

やっぱりそれしかないっぽいですよね・・・
今すぐ対応できないので、それで解決したらこちらでご報告致します。

ありがとうございます。

08/03/31 に nod_chip<hal2...@rio.odn.ne.jp> さんは書きました:

chocol...@gmail.com

unread,
Apr 18, 2008, 2:15:48 PM4/18/08
to Google Web Toolkit in Japanese (GWTJP)
お世話になっております。chocolatです。

遅くなりましたが、結果報告です。

Keep-AliveはProxyには無視されます。
代案を検討中です。

今回の件には関係ありませんが、
GWTのIMAGEオブジェクトには、バグがありそうです。憶測ですが・・・
IMAGEを使ったボタンをがある画面を表示すると同一URLを叩きに行ってしまうことが
わかりました。
・・・・Servletなり、Actionなりを2重リクエストしてしまうということです。
1.5マイルストーン2で試しました。
回避策はHTMLオブジェクトでIMAGEタグを書いてしまう・・・><



On 3月31日, 午後1:48, "小山准" <chocolat0...@gmail.com> wrote:
> お世話になっております。chocolatです。
>
> > > ブラウザパフォーマンスの影響でGWT上で遷移するのを、
> > > リンクでページ遷移して新たなGWTをロードするように3つにわけました。
> > この前提部分が気になります。
> > ブラウザパフォーマンスに問題が無ければページは1つで良いという事になるのでしょうか?
> > この部分についてもう少し詳しく教えていただけませんでしょうか?
>
> 詳しく言いますと、透過PINGや、スタイルシートでかなりUIを凝っていまして
> IE(シェア1番なのに・・・)だけが、レンダリングでCPUが100近くまで取られてしまうために
> できるだけ、分けるように致しました。
> それが最良とは思いませんが、ただの逃げの策です。
> IEのレンダリングが最適化できるのならば、1つに戻したいと思っております。
>
> > 効果があるかどうかは分かりませんが、
> > ページ遷移の際に「Keep-Alive: timeout=1」等を設定して
> > 早期にHTTP通信が閉じられるようにはできませんでしょうか?
>
> やっぱりそれしかないっぽいですよね・・・
> 今すぐ対応できないので、それで解決したらこちらでご報告致します。
>
> ありがとうございます。
>
> 08/03/31 に nod_chip<hal25...@rio.odn.ne.jp> さんは書きました:
Reply all
Reply to author
Forward
0 new messages