從作業系統級别來解決異步的IO問題,大幅度的提高性能。
1.生産環境安裝優化步奏:
tomcat 版本:
apache-tomcat-7.0.68.tar.gz
jdk版本:
java-1.7.0_55.tar
2.下載下傳相關軟體包:
cd /aliyun/soft/
rz -y
apr-1.5.0.tar.gz
apr-util-1.5.3.tar.gz
apr-iconv-1.2.1.tar.gz
tomcat-native-1.1.34-src.tar.gz
3.yum安裝需要的依賴:
yum install -y apr-devel openssl-devel gcc openssl (需要的話得安裝)
4.編譯安裝apr軟體包
tar xf apr-1.5.0.tar.gz -C /aliyun/
cd /aliyun/apr-1.5.0/
./configure --prefix=/aliyun/apr
make &&make install
5.編譯安裝apr-iconv軟體包
tar xf /aliyun/soft/apr-iconv-1.2.1.tar.gz -C /aliyun/
cd /aliyun/apr-iconv-1.2.1/
./configure --prefix=/aliyun/apr-iconv --with-apr=/aliyun/apr
make && make install
echo $?
6.編譯安裝apr-util 軟體包
tar xf /aliyun/soft/apr-util-1.5.3.tar.gz -C /aliyun/
cd /aliyun/apr-util-1.5.3/
./configure --prefix=/aliyun/apr-util --with-apr=/aliyun/apr --with-apr-iconv=/aliyun/apr-iconv/bin/apriconv
7.編譯安裝tomcat-native 軟體包
tar xf /aliyun/soft/tomcat-native-1.1.34-src.tar.gz -C /aliyun/
cd /aliyun/tomcat-native-1.1.34-src/jni/native/
./configure --with-apr=/aliyun/apr --with-java-home=/aliyun/java-1.7.0
8.将編譯安裝tomcat-native生成的/usr/local/apr/lib加入系統環境變量并且修改server.xml配置檔案
echo "export LD_LIBRARY_PATH=/usr/local/apr/lib " >>/etc/profile
source /etc/profile
vim /aliyun/tomcat7/conf/server.xml
[root@tomcat02 native]# cat -n /aliyun/tomcat7/conf/server.xml|sed -n "24p"
9.檢查生效情況
到此安裝完畢:
簡單測試得知:apr連接配接建立的速度會有50%以上的提升。
tomcat中間件的啟動運作模式有分為3種,可以在啟動運作控制台和啟動日志中看出.預設模式bio(阻塞IO) 缺點:能非常低下,沒有經過任何優化處理和支援,并發量高時,線程數較多,浪費資源.
nio(異步IO)利用Java的異步IO處理,可以通過少量的線程處理大量的請求.
apr(系統解決IO阻塞)從作業系統層面解決io阻塞問題,必須手動安裝apr和native包.
本文轉自 wjw555 51CTO部落格,原文連結:http://blog.51cto.com/wujianwei/2056456