1、簡介java
APR:Apache Portable Run-time libraries,Apache可移植運行庫。在早期的Apache版本中,應用程序自己必須可以處理各類具體操做系統平臺的細節,並針對不一樣的平臺調用不一樣的處理函數。隨着Apache的進一步開發,Apache組織決定將這些通用的函數獨立出來並發展成爲一個新的項目。這樣,APR的開發就從Apache中獨立出來,Apache僅僅是使用APR而已。mysql
Tomcat Native:這個項目可讓 Tomcat 使用 Apache 的 apr 包來處理包括文件和網絡IO操做,以提高性能。web
2、須要安裝的程序sql
最新版的aprapache
最新版的apr-utilvim
tomcat-native.tar.gztomcat
前兩個能夠從http://apr.apache.org/下載,最後一個位於tomcat的bin目錄下。網絡
3、安裝併發
1 安裝aprdom
將最新的apr安裝程序apr-1.5.2.tar.gz下載到任意一個目錄下,好比/root/目錄下。
cd /root/
wget http://apr.apache.org/apr-1.5.2.tar.gz
tar zxvf apr-1.5.2.tar.gz
cd apr-1.5.2/
./configure --prefix=/usr/local/webserver/apr
make
make install
注意,這裏的prefix參數用於指定安裝路徑。
2 安裝apr-util
cd /root/
wget http://apr.apache.org/apr-util-1.5.4.tar.gz
tar zxvf apr-util-1.5.4.tar.gz
cd apr-util-1.5.4/
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/webserver/apr
make
make install
3 安裝tomcat-native
筆者的tomcat目錄爲/usr/local/apache-tomcat-7.0.63
cd /usr/local/apache-tomcat-7.0.63/bin/
tar zxvf tomcat-native.tar.gz
cd tomcat-native-1.1.33-src/jni/native/
./configure --with-apr=/usr/local/apr --with-java-home=/usr/local/webserver/jdk1.7.0_79
make
make install
4、設置apr的環境變量
在/etc/profile中添加如下內容
JAVA_HOME="/usr/local/webserver/jdk1.7.0_79"
PATH="$JAVA_HOME/bin:$JAVA_HOME/jre/bin:/usr/local/webserver/mysql/bin:$PATH"
CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
LD_LIBRARY_PATH=/usr/local/webserver/apr/lib
CATALINA_OPTS="$CATALINA_OPTS -Djava.library.path=/usr/local/webserver/apr/lib"
export JAVA_HOME PATH CLASSPATH LD_LIBRARY_PATH CATALINA_OPTS
保存後使profile生效
source /etc/profile
5、驗證
cd /usr/local/apache-tomcat-7.0.63/bin/
./catalina.sh run
在第35行附近若看到以下的日誌輸出則表示安裝成功
INFO: Loaded APR based Apache Tomcat Native library 1.1.33 using APR version 1.5.2.
Jan 30, 2016 4:46:57 PM org.apache.catalina.core.AprLifecycleListener lifecycleEvent
INFO: APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
我本身作完上面重啓後不行,提示:
解決辦法:
yum install apr-devel
vim /etc/profile
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/webserver/apr/lib:/usr/local/apr/lib
便可
主要是這個文件:libtcnative-1.so.0