配置Tomcat apr運行模式

配置Tomcat apr運行模式

  tomcat中一共有三種運行模式,分別是:bio,nio,aprhtml

  bio是阻塞式IO操做,使用的是傳統的java i/o處理方式,對於每個請求都要建立一個線程來進行處理,因此開銷較大不適合處理高併發的場景java

  nio是基於java中非阻塞IO操做的API實現,比傳統的i/o處理方式有更高的併發運行性能,啓動時能夠看到:web

  

  apr是從操做系統級別解決異步IO問題,大幅度提升服務器的併發處理性能,也是Tomcat生產環境運行的首選方式apache

  目前Tomcat 8.x默認狀況下所有是運行在nio模式下,而apr的本質就是使用jni技術調用操做系統底層的IO接口,因此須要提早安裝所須要的依賴,首先是須要安裝openssl和apr,命令以下:tomcat

yum -y install openssl-devel
yum -y install apr-devel

  安裝以後,去tomcat官網下載native組件,native能夠當作是tomcat和apr交互的中間環節,下載地址是:http://tomcat.apache.org/download-native.cgi 這裏下載最新的版本1.2.10服務器

  解壓以後上傳至服務器執行解壓並安裝:併發

tar -xvzf tomcat-native-1.2.10-src.tar.gz
cd tomcat-native-1.2.10-src/native/
./configure

  若是執行./configure的時候出現下面的錯誤:異步

  

  這種錯誤說明native須要openssl版本大於1.0.2 而目前系統版本是1.0.1e,因此須要更新版本,而yum源最新的openssl也就到1.0.1e版本,因此如今必須手動去openssl官網下載安裝包進行編譯安裝,編譯時編譯到自定義目錄和系統的openssl並存並且互不干擾,由於系統的openssl可能被一些軟件所使用,這樣通常安裝在/usr/local/下便於管理高併發

  openssl官網:https://www.openssl.org/性能

  下載地址是:https://www.openssl.org/source/ ,這裏下載最新版本的1.1.0e

  

  下載以後執行以下命令安裝:

tar -xvzf openssl-1.1.0e.tar.gz
cd openssl-1.1.0e/
./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl
make && make install

  稍等一會就安裝成功了,如今再次進入native剛纔編譯的目錄下,從新執行以下命令安裝:

./configure --with-ssl=/usr/local/openssl
make && make install

  其中編譯指定--with-ssl爲剛纔新安裝的目錄,不然會自動尋找系統目錄;安裝成功以後,默認位置是在:/usr/local/apr

  而後進入tomcat安裝目錄,編輯配置文件:conf/server.xml

  

  如圖所示,將默認的protocol="HTTP/1.1"修改成protocol="org.apache.coyote.http11.Http11AprProtocol"

  修改完成保存並退出,而後有如下兩種方法來引入apr:

  方法1:配置tomcat安裝目錄下:bin/catalina.sh文件引入apr,推薦這種方式:

  

  如圖所示在原有變量JAVA_OPTS後面追加對應的配置便可,添加一行新的就能夠:JAVA_OPTS="$JAVA_OPTS -Djava.library.path=/usr/local/apr/lib"

  而後保存並退出

  方法2:在環境變量中加入apr的目錄,讓tomcat可使用系統變量搜索到,編輯/etc/profile在最後添加以下兩行內容:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr/lib
export LD_RUN_PATH=$LD_RUN_PATH:/usr/local/apr/lib

  保存以後,執行 source /etc/profile 使配置生效

  以上兩種方法都是能夠的,配置完成以後,重啓一下tomcat,而後查看日誌logs/catalina.out能夠看到http已經以apr模式啓動了

  

相關文章
相關標籤/搜索