jsp靜態和動態分開處理apache+tomcat

Apache是當前使用最爲普遍的WWW服務器軟件,具備至關強大的靜態HTML處理的能力。 

     Tomcat
服務器是一個免費的開放源代碼的Web應用服務器,它是Apache軟件基金會(Apache Software Foundation)的Jakarta項目中的一個核心項目,由ApacheSun   其餘一些公司及我的共同開發而成。因爲有了Sun的參與和支持,最新的ServletJSP   規範老是能在Tomcat中獲得體現,Tomcat5支持最新的Servlet 2.4JSP 2.0規範。由於Tomcat技術先進、性能穩定,並且免費,於是深受Java愛好者的喜好並獲得了部分軟件開發商的承認,成爲目前比較流行的Web應用服務器。 

Tomcat
IISApacheWeb服務器同樣,具備處理HTML頁面的功能,另外它仍是一個ServletJSP容器,獨立的Servlet容器是Tomcat的默認模式。 



二.爲何須要整合 

整合的最主要緣由是爲了在現有的硬件條件下提供最大的負載。 

若是單獨使用TomcatJSP服務器,在工做效率上會存在問題,Tomcat處理靜態HTML的能力不如Apache,而且所能承受的最大併發鏈接數也有必定的限制; 

在測試中,當併發鏈接較多時,Tomcat就會處於"僵死"狀態,對後繼的請求鏈接失去響應。因此如今提出一個"整合"解決方案:將htmljsp的功能部分進行明確分工,讓tomcat只處理jsp部分,其它的由apache這個web server處理。ApacheTomcat各司其職,那麼服務器的總體效率就可以獲得提高。 



三.整合的基本原理 

做爲Apache下面的子項目,Tomcat Apache之間有着自然的聯繫。在實際操做中,主要是Apache做爲主服務器運行,當監聽到有jsp或者servlet的請求時,將請求轉發給tomcat服務器,由tomcat服務器進行解析後,發回apache,再由apache發回用戶。 

tomcat中有兩個監聽的端口,一個是8080用於提供web服務,一個是8009用於監聽來自於apache的請求。當apache收到jsp或者servlet請求時,就向tomcat 8009端口發送請求,交由tomcat處理後,再返回給apache,由apache返回給客戶。 



四.安裝ApacheTomcat服務器 

  
操做系統環境:Windows xp home 

  
安裝文件:apache-tomcat-6.0.14.exe apache_2.2.6-win32-x86-openssl-0.9.8e.msi mod_jk-apache-2.2.4.so 



  apache tomcat 的官方網站上面下載apache tomcat,安裝apachetomcat 

    
http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32下載 mod_jk-apache-2.2.4.so 

    
mod_jk-apache-2.2.4.so拷貝到apache安裝目錄下面的modules目錄中。 

五.修改Tomcat設置 

    
tomcatconf目錄下建一個workers.properties的文本文件,添加以下配置 



     workers.tomcat_home="tomcat
安裝目錄

     #
mod_jk模塊知道Tomcat的安裝路徑 

     workers.java_home="java
安裝目錄

     #
mod_jk模塊知道jdk路徑 

     ps=" 

     worker.list=ajp13 

     #
這裏是關鍵,名字要和httpd.conf的一致。若是這裏改了httpd.conf也要改。 

     worker.ajp13.port=8009 

     #
工做端口,tomcatjk監聽端口,能夠查看Server.xml中有port="8009"            

     worker.ajp13.host=localhost 

     #Tomcat
所在機器,若是安裝在與apache不一樣的機器則須要設置IP 

     worker.ajp13.type=ajp13 

     #
類型,好像不能改,會出問題 

     worker.ajp13.lbfactor=1 

     #
負載平衡因子    



六.修改Apache設置 

修改apache安裝目錄下conf目錄下的httpd.conf,增長以下配置 



  LoadModule jk_module modules/mod_jk-apache-2.2.4.so 

       JkWorkersFile "tomcat
安裝目錄/conf/workers.properties" 

  
 JkLogFile "apache安裝目錄/logs/mod_jk.log" 



      JkMount /*.jsp ajp13 

      JkMount /*.do ajp13 

七.整合操做說明 

  mod_jk-apache-2.2.4.so至關因而apachetomcat之間的橋樑同樣,因此在apache的配置文件下面加上LoadModule jk_module modules/mod_jk-apache-2.2.4.so 將此模塊載入。 

JkWorkersFile "tomcat
安裝目錄/conf/workers.properties" 說明了mod_jk-apache-2.2.4.so 如何工做,當出現要轉發時,將請求發送到那裏進行處理,表明了一系列的工做參數。

JkLogFile "apache
安裝目錄/logs/mod_jk.log" 設定日誌的地址。 

JkMount
 說明了將什麼樣的URL進行發送到tomcat進行處理。JkMount /*.jsp ajp13 說明了要將jsp請求發到tomcat,JkMount /*.do ajp13說明了要將.do型的servlet發到tomcat進行處理。在實際的分發中,若是servlet命名不帶後綴的話,將沒法被識別,也就沒法進行處理。 
html

相關文章
相關標籤/搜索