Tomcat配置

1、Tomcat內存參數調整。

[root@localhost ~]# vim /usr/local/tomcat/bin/catalina.sh 
JAVA_OPTS="$JAVA_OPTS -server -Xmn1024M -Xms2096M -Xmx2096M \
-Djava.net.preferIPv4Stack=true -Djava.awt.headless=true \
-Dorg.apache.catalina.connector.RECYCLE_FACADES=false -XX:PermSize=512M \
-XX:MaxPermSize=512M  -XX:+UseConcMarkSweepGC -XX:+UseParNewGC \
-XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection \
-XX:CMSFullGCsBeforeCompaction=0 -XX:+CMSClassUnloadingEnabled \
-XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly  \
-XX:SurvivorRatio=65536 -XX:MaxTenuringThreshold=0 -XX:CMSInitiatingOccupancyFraction=81 \
-XX:SoftRefLRUPolicyMSPerMB=0 -Xloggc:gc.log -XX:+PrintGCDetails

2、安裝tomcat-native以提升tomcat性能

        apr下載地址:http://apache.org/

[root@localhost~]#tar -zxvf apr-1.5.1.tar.gz
[root@localhost~]#cd apr-1.5.1
[[email protected]]#./configure --prefix=/usr/local/apr   #安裝apr可移植運行庫
[[email protected]]# make
[[email protected]]# make install
[root@localhost~]# cd /usr/local/tomcat/bin/
[root@localhostbin]# tar xf tomcat-native.tar.gz
[root@localhostbin]# cd tomcat-native-1.1.29-src/jni/native/
[root@localhostnative]# ./configure --with-apr=/usr/local/apr --with-java-home=/usr/local/java
[root@localhostnative]# make && make install
[root@localhost ~]# vim /etc/profile  #聲明環境變量
export LD_LIBRARY_PATH=/usr/local/apr/lib


3、配置多實例Tomcat。

    Tomcat下載地址:http://tomcat.apache.org/

[root@localhost~]# tar xf apache-tomcat-7.0.47.tar.gz -C /usr/local   #解壓tomcat到/usr/local目錄
[root@localhost~]# cp -r /usr/local/apache-tomcat-7.0.47/ /usr/local/apache-tomcat-7.0.47-2  #配置Tomcat多實例
[root@localhost~]# mv /usr/local/apache-tomcat-7.0.47/ /usr/local/apache-tomcat-7.0.47-1
[root@localhost~]# ln -sv /usr/local/apache-tomcat-7.0.47-1/ /usr/local/tomcat1  #創建軟連接,方便管理
[root@localhost~]# ln -sv /usr/local/apache-tomcat-7.0.47-2/ /usr/local/tomcat2
[root@localhost ~]# vim /etc/profile.d/custom.sh   #聲明環境變量
CATALINA_HOME_1=/usr/local/tomcat1
CATALINA_HOME_2=/usr/local/tomcat2
JAVA_HOME=/usr/local/java
LD_LIBRARY_PATH=/usr/local/apr/lib
export CATALINA_HOME_1  CATALINA_HOME_2  JAVA_HOME  LD_LIBRARY_PATH
export PATH=$PATH:$JAVA_HOME/bin
[root@localhost ~]# . /etc/profile.d/custom.sh  #執行自定義變量腳本,使之生效
[root@localhost~]# vim /usr/local/tomcat1/bin/startup.sh #修改tomcat的啓動和關閉腳本,分別指定tomcat實例家目錄
export CATALINA_HOME=$CATALINA_HOME_1
[root@localhost ~]# vim/usr/local/tomcat1/bin/shutdown.sh
exportCATALINA_HOME=$CATALINA_HOME_1
[root@localhost ~]# vim/usr/local/tomcat2/bin/startup.sh
exportCATALINA_HOME=$CATALINA_HOME_2
[root@localhost ~]# vim /usr/local/tomcat2/bin/shutdown.sh
exportCATALINA_HOME=$CATALINA_HOME_2
[root@localhost ~]# vim /etc/init.d/tomcat1
#!/bin/sh
# Tomcat init script for Linux.
#
# chkconfig: 2345 96 14
# description: The Apache Tomcat servlet/JSP container.
JAVA_HOME=/usr/local/java
CATALINA_HOME=/usr/local/tomcat1
LD_LIBRARY_PATH=/usr/local/apr/lib
export JAVA_HOME CATALINA_HOME LD_LIBRARY_PATH
exec $CATALINA_HOME/bin/catalina.sh $*
[root@localhost ~]# vim /etc/init.d/tomcat2
#!/bin/sh
# Tomcat init script for Linux.
#
# chkconfig: 2345 96 14
# description: The Apache Tomcat servlet/JSP container.
JAVA_HOME=/usr/local/java
CATALINA_HOME=/usr/local/tomcat2
LD_LIBRARY_PATH=/usr/local/apr/lib
export JAVA_HOME CATALINA_HOME LD_LIBRARY_PATH
exec $CATALINA_HOME/bin/catalina.sh $*
[root@localhost~]# vim /usr/local/tomcat2/conf/server.xml   #修改tomcat2默認端口號
              …………
              <Server port="8006"shutdown="SHUTDOWN">  
                     …………
                     <Connectorport="8081" protocol="HTTP/1.1"
                            …………
                            <Connectorport="8010" protocol="AJP/1.3" redirectPort="8443"/>

4、配置redis session共享。

配置redis session共享,把以下3個jar包放到2個tomcat實例的庫$CATALINA_HOME_1/lib/   $CATALINA_HOME_2/lib/
        
commons-pool-1.6.jar
jedis-2.1.0.jar
tomcat-redis-session-manager-1.1.jar
 
然後修改$CATALINA_HOME/conf/context.xml指定redis服務器路徑
 
<ValveclassName="com.radiadesign.catalina.session.RedisSessionHandlerValve"/>
      <ManagerclassName="com.radiadesign.catalina.session.RedisSessionManager"database="0" host="192.168.1.1"maxInactiveInterval="1800" port="1234"/>

5、日誌分割。

[root@localhost ~]# tar xf cronolog-1.6.2.tar.gz   #安裝cron日誌分割工具
[root@localhost ~]# cd cronolog-1.6.2
[root@localhost cronolog-1.6.2]# ./configure
[root@localhost cronolog-1.6.2]# make && make install
[root@localhost ~]# vim /usr/local/tomcat/bin/catalina.sh
#touch "$CATALINA_OUT"  #註釋該行
org.apache.catalina.startup.Bootstrap "$@" start \
 |/usr/local/sbin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out >> /dev/null &
 #>> "$CATALINA_OUT" 2>&1 "&"  #註釋該行,添加如上一行
org.apache.catalina.startup.Bootstrap "$@" start \
 |/usr/local/sbin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out >> /dev/null &
 #>> "$CATALINA_OUT" 2>&1 "&"  #註釋該行,添加如上一行

6、主配置文件優化調整。

[root@localhost ~]# vim /usr/local/tomcat/conf/server.xml 
    <Connector port="8080"
               executor="tomcatThreadPool" 
               protocol="HTTP/1.1" 
               acceptCount="3000"   #達到最大線程數後的排隊數
               maxThreads="2000"    #最大線程數
               compression="on"
               enableLookups="false" 
               compressionMinSize="2048" 
               noCompressionUserAgents="gozilla, traviata" compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" 
               connectionTimeout="20000"
               redirectPort="8443" useBodyEncodingForURI="true" URIEncoding="UTF-8"/>

7、添加Tomcat管理用戶。

[root@localhost ~]# vim /usr/local/tomcat/conf/tomcat-users.xml 
<tomcat-users>
        <role rolename="admin-gui"/>
        <role rolename="admin-script"/>
        <role rolename="manager-gui"/>
        <role rolename="manager-script"/>
        <role rolename="manager-jmx"/>
        <role rolename="manager-status"/>
        <user username="admin" password="123456" roles="admin-gui,admin-script,manager-gui,manager-script,manager-jmx,manager-status"/>
</tomcat-users>


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章