2016-06-16 2 views
0

状況:サーバー側でFirefoxが応答しないスクリプト警告を修正するにはどうすればよいですか?

私は、Java(1500 LOC)で記述されており、GWT(GoogleのWebツール)をJavaScriptにコンパイルされているウェブサイトを持っています。私は数週間前に私のウェブサイトで「警告:応答しないスクリプト」を観察し始めました。私は25回の試行のうち22回、このポップアップ警告を得た。

Firefoxのブラウザキャッシュをクリアすることでこれを解決できます。その後、私は警告メッセージ1回/ 25回を見た。

私はこれの根本的な原因を理解しようとしています。それはクライアント側の問題のようです。私の顧客は、私が頻繁にそのウェブサイトをロードしないので、おそらくこれを見ていないでしょう。しかし、私は彼らが今のこの問題に遭遇するかもしれないと感じています。私は、サーバー側で無反応スクリプト警告の発生をなくす/減らすためにできることがあるのだろうかと思います。私は私のウェブサイトをロードする前と後の

質問:

  1. は、私が "キャッシュについて" のFirefoxを比較しました。唯一の違いは、Webサイトを読み込むたびにメモリに43バイトのキャッシュが作成されることです。これは普通のことですか?
  2. 私はキャッシュがユーザーのウェブサイトをより速く読み込むのを助けると思っていましたが、私の場合は何が起こっているのでしょうか? (私のウェブサイトはロード時に毎回新しいキャッシュを生成し、古いキャッシュは使用されないと思われます)
  3. キャッシュをクリアするとこの問題を解決できるため、ユーザーが自分のウェブサイトを閉じると自動的にキャッシュをクリアできますか?
  4. GWTでコンパイルされたjavascriptに問題がありますか?ネットワークの速度も要因になりますか?
  5. その他に、この問題を解決するためのその他の解決策は何ですか。
+0

正確にアプリケーションがハングしている場所を特定するには、プロファイリングを行う必要があります。それは特定の要求ですか?どの機能が最も時間を費やしていますか? –

+0

@KevinWorkman応答のないスクリプトの警告が表示され、Firefoxのデバッグスクリプトをクリックすると、XXX.cache.htmlの最後の行(12346行目)が表示されます。その行には何もありませんが、私はUIフィールドの初期化がほとんどの時間を取っていると推測しています。私はこれがFirefoxでのみ起こり、Chromeでは起こらないことも観察しました。 GWTが別のブラウザ用に異なるjavascriptを生成するか、または2つのブラウザがjavascriptを別々に処理するかはわかりません。 – EV3

答えて

0
  1. は、Firefoxに放火犯をインストールし、タイムアウトしているかのスクリプト参照してください。これがGWTだとすると、サーバ側で何か問題が発生する可能性があります。その場合:

  2. プロファイラの下でサーバーを実行し、ホストスポットまたはボトルネックがどこにあるかを確認します。私はJProfilerを好み、10年以上それを使用しています。

+0

これはサーバー側で重い作業をすることによって起こるとは思われません。 これが発生したページで何が起こっているのか少し具体的にすることはできますか?多くのUI要素が更新されていますか?大きなflextableが作成されますか?たくさんの計算? – Knarf

+0

私はサーバーが問題であるとは思わない。サーバー上の作業に時間がかかる場合でも、接続はまだ非同期であり、クライアントをブロックすべきではありません。 Javaコード(またはコンパイルの結果であるJavascript)を使用してブラウザをオーバーテックスする可能性が高くなります。 – Akkusativobjekt

+0

@ Knarf私は100以上のUI要素をこのウェブサイトにロードしています。ほとんどのUI要素には、いくつかのonClickイベントがあります。そして、警告を見てFirefoxでスクリプトをデバッグすると、XXX.cache.htmlの最後の行が表示され、その行には何もありません(ファイルの最後の行です)。 – EV3

関連する問題