CentOS 7.7 Tomcat 8.5開啓APR運行模式

一、Tomcat的三種運行模式:java

(1)BIOBlocking I/O,阻塞式I/O操做,表示Tomcat使用的是傳統的Java I/O操做(即java.io包及其子包),每個請求都要建立一個線程來進行處理,是Tomcat 7及以前版本默認的運行模式,性能最差,沒有通過任何優化處理。linux

(2)NIONon-Blocking I/O,非阻塞式I/O操做,Java SE 1.4及後續版本提供的一種新的I/O操做方式(即java.nio包及其子包),可以經過少許的線程處理大量的請求,是Tomcat 8默認的運行模式,Java nio是一個基於緩衝區,並能提供非阻塞I/O操做的Java API,利用Java異步I/O技術,使得擁有比傳統I/O操做方式更好的併發運行性能。apache

(3)APRApache Portable RuntimeApache可移植運行庫,它是Apache HTTP Server2.x的核心。TomcatJNIJava Native InterfaceJava本地接口)的形式調用Apache HTTP服務器的核心動態連接庫來處理文件讀取或網絡傳輸操做,從而大大提升Tomcat對靜態文件的處理性能,從操做系統級別來解決異步的I/O問題,使用APR能夠提供更好的伸縮性和更高的性能,更好的與底層服務作集成。APR模式是Tomcat生產環境運行高併發應用的首選模式。vim

二、安裝JDKtomcat

# tar -xf jdk-8u241-linux-x64.tar.gz -C /usr/local服務器

# cd /usr/local網絡

# mv jdk1.8.0_241/ jdk併發

三、配置JDK環境變量:異步

# vim /etc/profile.d/jdk.shide

export JAVA_HOME=/usr/local/jdk

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export PATH=$JAVA_HOME/bin:$PATH

# . /etc/profile.d/jdk.sh

# echo $JAVA_HOME

image.png

# java -version

image.png

四、yum方式安裝相關軟件包:# yum -y install gcc make openssl openssl-devel expat-devel

五、編譯安裝apr

# tar -xf apr-1.7.0.tar.gz -C /usr/src

# cd /usr/src/apr-1.7.0

# vim configure --> 31880行的$RM "$cfgfile"#號註釋

# ./configure --prefix=/usr/local/apr --enable-profile --enable-threads --with-sendfile

# make && make install

# vim /etc/profile.d/apr.sh

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

# . /etc/profile.d/apr.sh

六、編譯安裝apr-iconv

# tar -xf apr-iconv-1.2.2.tar.gz -C /usr/src

# cd /usr/src/apr-iconv-1.2.2

# ./configure --prefix=/usr/local/apr-iconv --with-apr=/usr/local/apr

# make && make install

七、編譯安裝apr-util

# tar -xf apr-util-1.6.1.tar.gz -C /usr/src

# cd /usr/src/apr-util-1.6.1

# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr --with-apr-iconv=/usr/local/apr-iconv/bin/apriconv

# make && make install

八、解壓Tomcat

# tar -xf apache-tomcat-8.5.50.tar.gz -C /usr/local

# cd /usr/local

# mv apache-tomcat-8.5.50/ tomcat

九、編譯安裝tomcat-native

# cd /usr/local/tomcat/bin

# tar -xf tomcat-native.tar.gz

# cd tomcat-native-1.2.23-src/native

# ./configure --with-apr=/usr/local/apr --with-java-home=/usr/local/jdk

# make && make install

十、配置Tomcat環境變量:

# vim /etc/profile.d/tomcat.sh

export CATALINA_HOME=/usr/local/tomcat

export PATH=$CATALINA_HOME/bin:$PATH

export JAVA_HOME=/usr/local/jdk

export JRE_HOME=$JAVA_HOME/jre

# . /etc/profile.d/tomcat.sh

# echo $CATALINA_HOME

image.png

# catalina.sh version

image.png

十一、查看Tomcat 8.5默認運行模式:

# configtest.sh

image.png

十二、修改server.xml配置文件:

# cd /usr/local/tomcat/conf

# cp server.xml{,.bak}

# vim server.xml

修改前(NIO模式)

修改後(APR模式)

<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000"   redirectPort="8443" />

<Connector   port="8080" protocol="org.apache.coyote.http11.Http11AprProtocol"   connectionTimeout="20000" redirectPort="8443"   />

<Connector   port="8009" protocol="AJP/1.3" redirectPort="8443"   />

<Connector   port="8009" protocol="org.apache.coyote.ajp.AjpAprProtocol"   redirectPort="8443" />

備註:

(1)Tomcat的兩種鏈接器,HTTPAJP

(2)AJPApache JServ Protocol,面向數據包的基於TCP/IP的協議,使用二進制格式傳輸可讀性文本

1三、修改catalina.sh腳本文件:

# vim /usr/local/tomcat/bin/catalina.sh,在首行#!/bin/sh下新增以下代碼:

CATALINA_OPTS="$CATALINA_OPTS -server -Xms512m -Xmx512m -Djava.library.path=/usr/local/apr/lib"

1四、查看配置後的運行模式:

# catalina.sh configtest

image.png

1五、啓動Tomcat

# useradd tomcat

# chown -R tomcat.tomcat /usr/local/tomcat

# su - tomcat -c "startup.sh"

相關文章
相關標籤/搜索