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