公司有個項目,部署在weblogic8.1上以後,發現比在tomcat下慢不少,通過分析排查,緣由是web應用的WEB-INF下的weblogic.xml裏的參數設置不合理(使用默認值有時並不是最佳值)形成的,具體說明以下:java
1:pageCheckSecondsweb
<jsp-descriptor>tomcat
<param-name>pageCheckSeconds</param-name>
<param-value>-1</param-value>jsp
</jsp-descriptor>spa
pageCheckSecond的默認值是1,表示每隔1秒對JSP頁面進行檢查,檢查JSP頁面是否被修改、是否須要從新編譯。調試
系統上線後,須要對該默認值修改成-1,表示永不檢查。修改成-1的一個缺點是:對於頁面的修改須要從新部署整個WEB應用。xml
2:servlet-reload-check-secsblog
該參數的默認值也是1,每隔1秒檢查servlet是否被修改並須要從新編譯。這裏建議修改成-1,表示永不檢查,具體設置以下:ip
<container-descriptor>
<servlet-reload-check-secs>-1</servlet-reload-check-secs>
</container-descriptor>部署
二:應用程序的jar包和weblogic類衝突的問題
公司的項目還遇到這樣一個問題,Tomcat下用的好好的,可是放到weblogic下就出了問題,最可能形成這樣的緣由是應用程序的jar包和weblogic下的jar包衝突。能夠在weblogic.xml裏設置,具體以下:
<container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>
從節點名稱上也能比較清楚知道該設置的含義,優先使用Web應用里加載的類。
三:查看weblogic編譯jsp文件產生的.java文件
<jsp-param>
<param-name>keepgenerated</param-name>
<param-value>true</param-value>
</jsp-param>
keepgenerated:是否讓編譯jsp文件產生的.java文件持續存在,若是設置爲true,就能夠在部署的環境查看jsp產生的.java文件,方便調試錯誤。