2015-06-27 87 views
0

我有JSP需要超過12秒才能加載。它在IE11上正常工作。它包括其他6個jsps。我試圖分析是什麼導致父母jsp的加載時間更長。JSP加載時間超過12秒

包含的JSP是否在每次加載父JSP時都被編譯?

每個JSP和父JSP都有一些在腳本標記中定義的函數。
這些函數是否在服務器上編譯? 如果編譯瀏覽器呈現這個JS功能每次加載?

改進步驟: 將所有JS函數包含在JS腳本中並將其導入頁面。因此,瀏覽器可以從瀏覽器緩存中提取它,而不是一次又一次地渲染它。它會有幫助嗎?

繼承人探查器報告的快照。

enter image description here

+0

我解決了IE8的問題,以降低負荷至3-4秒。將腳本標記中的所有JS代碼添加到單個JS文件中,並將其導入到JSP中。隨後添加setTimeout爲假設在後臺加載的jQuery變化事件的數量。我正在使用JS文件的縮小版本,並在最後包括JS,看看它是否會進一步提高性能。 – pratikpawar

回答

1

JSP被由應用服務器通常被編譯一次,並重新開始之間所產生的類文件再次使用。在Tomcat中,它們存儲在工作目錄中。

Where are compiled JSP Java (*__jsp.java) files?

您可以刪除的目錄,然後在服務器啓動後監測工作目錄,看看需要多長時間來編譯。一個瀏覽器不應該再比另一個瀏覽器,因爲編譯發生在服務器端。

我有點困惑,因爲你的答案的第二部分引用JS文件。你在問關於Javascript還是Java Server Pages?

+0

其javascript。我需要知道jsp上腳本標記中定義的js函數是否也在服務器端編譯。如果是這樣,他們每次都通過瀏覽器加載,因爲它們在腳本標記中,而不是在導入的js文件中。我的假設是瀏覽器緩存導入js和後續調用相同的url從瀏覽器緩存中獲取它,而不是呈現相同的js代碼 – pratikpawar

1

您可以配置文件使用任何Java剖析工具,如Yourkit,看看那裏的大部分時間都花在

+0

請查找附加的探查器報告。我無法弄清導致延遲的確切功能。它說功能是用戶類型,但它們都是核心呼叫。 – pratikpawar

+0

嗯..如你所想,這是UI問題,而不是服務器端 – JavaHopper

相關問題