Tomcat 效能優化之APR
阿新 • • 發佈:2018-12-25
APR庫使用
Tomcat中使用APR庫,其實就是在Tomcat中使用JNI的方式來讀取檔案以及進行網路傳輸。可以大大提升Tomcat對靜態檔案的處理效能,同時如果你使用了HTTPS方式傳輸的話,也可以提升SSL的處理效能。
一般在Windows下,可以直接下載編譯好的二進位制版本的dll庫檔案來使Tomcat啟用APR,一般建議拷貝庫檔案tcnative-1.dll到Tomcat的bin目錄下。而在Linux下,可以直接解壓和安裝bin目錄下的tomcat_native.tar.gz檔案,編譯之前要確保apr庫已經安裝。
怎麼才能判斷Tomcat是否已經啟用了APR庫呢?方法是通過看Tomcat的啟動日誌:
如果沒有啟用APR,則啟動日誌一般有這麼一條:
org.apache.coyote.http11.Http11Protocol start
如果啟用了APR,則這條日誌就會變成:
org.apache.coyote.http11.Http11AprProtocol start
tcnative-1.dll 下載地址:http://tomcat.heanet.ie/native/
調優綜述
Tomcat中使用APR庫,其實就是在Tomcat中使用JNI的方式來讀取檔案以及進行網路傳輸。可以大大提升Tomcat對靜態檔案的處理效能,同時如果你使用了HTTPS方式傳輸的話,也可以提升SSL的處理效能。
一般在Windows下,可以直接下載編譯好的二進位制版本的dll庫檔案來使Tomcat啟用APR,一般建議拷貝庫檔案tcnative-1.dll到Tomcat的bin目錄下。而在Linux下,可以直接解壓和安裝bin目錄下的tomcat_native.tar.gz檔案,編譯之前要確保apr庫已經安裝。
怎麼才能判斷Tomcat是否已經啟用了APR庫呢?方法是通過看Tomcat的啟動日誌:
如果沒有啟用APR,則啟動日誌一般有這麼一條:
org.apache.coyote.http11.Http11Protocol start
如果啟用了APR,則這條日誌就會變成:
org.apache.coyote.http11.Http11AprProtocol start
tcnative-1.dll 下載地址:http://tomcat.heanet.ie/native/
調優綜述
根據以上分析,如果想要Tomcat達到最優的效果,首先要爭取使得作業系統以及網路資源達到最優,並且最好使用高版本的JDK。對於有大量靜態頁面的系統,採用Apache整合Tomcat的方式,把靜態頁面交由Apache處理,動態部分交由Tomcat處理,能極大解放Tomcat的處理能力。使用ARP庫也能極大的提高Tomcat對靜態檔案的處理能力。對於併發要求較高的系統,採用Apache加Tomcat叢集的方式,將負載分別分擔到多個Tomcat上,能很大的提高系統的效能,充分利用硬體資源。同時需要對Tomcat自身進行優化,包括增大記憶體、調節併發執行緒數等。
需要同時安裝
apr-1.3.3.tar.gz
apr-util-1.3.4.tar.gz
都沒弄成功。
linux下apr的安裝
進入tomcat的bin目錄
tar
-zxvf tomcat-native.tar.gz
cd tomcat-native-1.1.12-src/jni/native/
./configure --with-apr=/usr/local/apr --with-java-home=/usr/local/java
make
make install