歡迎來到“管理角”這個版,新一期的月刊專欄專注于 WebLogic 服務(wù)器的管理、配置、處理和開發(fā)方面。
開辟這個專欄的目的是為了向大家介紹在使用WebLogic Sever時,能普遍用到的非J2EE開發(fā)方面的問題。開發(fā)者和管理者同樣會發(fā)現(xiàn)這個專欄非常有價值,因為這些文章既適用于開發(fā)又適用于最終產(chǎn)品的應(yīng)用。此外,它很大程度上利用了來自于該領(lǐng)域和工程實驗室的經(jīng)驗,它提供了對實際問題的詳細(xì)解答。
JSP預(yù)編譯的必要性
本文著眼于移除潛在的系統(tǒng)性能瓶頸,它通過解決一個最普通的問題??在服務(wù)器運行時間中的JSP (JavaServer Page)編譯的系統(tǒng)開銷問題,這個問題困擾著幾乎所有的J2EE發(fā)展計劃。雖然JSP是在J2EE應(yīng)用范圍內(nèi)呈現(xiàn)動態(tài)HTML視圖的理想選擇,但在某種程度上它們會影響性能,這比錯誤的更令人討厭,給人的第一感覺是該程序很慢。
根據(jù)J2EE規(guī)范,JSP主要是HTML文件,在它里面包含著Java代碼用來和其他的系統(tǒng)組件進(jìn)行交互以及動態(tài)的顯示信息。規(guī)范規(guī)定所有的J2EE編譯應(yīng)用服務(wù)器應(yīng)當(dāng)支持JSP,客戶請求一個特定的JSP,將:
● 轉(zhuǎn)換JSP從HTML格式成為servlet類型的Java類(Java源格式),用簡寫的JSP符號代替完全符合規(guī)定的Java語法
● 將新產(chǎn)生的Java源文件編譯成.class字節(jié)碼形式
● 在新編譯的類上執(zhí)行適當(dāng)?shù)慕涌诜椒ú⑶覍蛻舳苏埱蠓祷仨憫?yīng)。
雖然從發(fā)展的觀點來看對于在表示層內(nèi)管理動態(tài)HTML的產(chǎn)生這是最好的途徑,但它影響到服務(wù)器的運行時間環(huán)境,要求JSP被解析、轉(zhuǎn)變成Java代碼,并且在它去處理一個特定的客戶端請求之前被編譯。對最終用戶明顯的影響是,一個響應(yīng)將會被延遲知道給定的JSP文件被編譯通過??紤]到一個特定的用戶請求可能用到兩個或多個JSP文件,因此編譯狀態(tài)必需的時間增加了很多倍。
更多信息請查看IT技術(shù)專欄