• tomcat配置及优化


    tomcat隐藏版本号

     1 cd apache-tomcat-7.0.59/lib
     2 mkdir test
     3 cd test
     4 jar xf ../catalina.jar
     5 vi org/apache/catalina/util/ServerInfo.properties
     6 server.info=Tomcat
     7 server.number=6
     8 server.built=Jan 18 2013 14:51:10 UTC
     9 jar cf ../catalina.jar ./*
    10 rm -rf test

    Tomcat jconsole监控远程jvm配置

    请猛戳这里

    Tomcat的三种模式及并发优化

    Tomcat的运行模式有3种

    1. bio

    默认的模式,性能非常低下,没有经过任何优化处理和支持.

    2. nio

    利用java的异步io护理技术,noblocking IO技术

    想运行在该模式下,直接修改server.xml里的Connector节点,修改protocol为

    1 <Connector port="80″
    2 protocol="org.apache.coyote.http11.Http11NioProtocol"
    3 connectionTimeout="20000"
    4 URIEncoding=”UTF-85 useBodyEncodingForURI="true"
    6 enableLookups="false"
    7 redirectPort="8443">

    启动后,就可以生效。

    3. apr

    从操作系统级别来解决异步的IO问题,大幅度的提高性能。

    必须要安装apr和native,直接启动就支持apr

    修改protocol为org.apache.coyote.http11.Http11AprProtocol

    安装apr

    1 yum -y install apr apr-devel

    安装native

    进入tomcat/bin目录,比如:

    1 cd /usr/local/tomcat/bin/
    2 tar xzfv tomcat-native.tar.gz
    3 cd tomcat-native-1.1.32-src/jni/native/
    4 ./configure --with-apr=/usr/bin/apr-1-config
    5 make && make install

    安装完成之后 会出现如下提示信息

    1 Libraries have been installed in:
    2    /usr/local/apr/lib

    安装成功后还需要对tomcat设置环境变量,方法是在catalina.sh文件中增加1行:

    1 CATALINA_OPTS="-Djava.library.path=/usr/local/apr/lib"

    修改8080端对应的conf/server.xml

    1 protocol="org.apache.coyote.http11.Http11AprProtocol"

    启动tomcat之后,查看日志会有这一行信息,说明已经是APR模式启动了

    1 INFO: APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].

    并发优化

    1.JVM调优

    新增文件TOMCAT_HOME/bin/setenv.sh如下语句,具体数值视情况而定。

    1 JAVA_OPTS="-Xms1024m -Xmx1024m -Xss1024K -XX:PermSize=64m -XX:MaxPermSize=128m"

    参数详解

    -Xms JVM初始化堆内存大小
    -Xmx JVM堆的最大内存
    -Xss 线程栈大小
    -XX:PermSize JVM非堆区初始内存分配大小
    -XX:MaxPermSize JVM非堆区最大内存

    建议和注意事项:
    -Xms和-Xmx选项设置为相同堆内存分配,以避免在每次GC 后调整堆的大小,堆内存建议占内存的60%~80%;非堆内存是不可回收内存,大小视项目而定;线程栈大小推荐256k.

    32G内存配置如下:

    1 JAVA_OPTS="-Xms20480m -Xmx20480m -Xss1024K -XX:PermSize=512m -XX:MaxPermSize=2048m"

    2.关闭DNS反向查询
    在<Connector port="8080" 中加入如下参数

    1 enableLookups="false"

    3.优化tomcat参数(使用APR)

     1 Listener className="org.apache.catalina.core.AprLifecycleListener" />
     2 ...
     3 <Connector port="8080"
     4            protocol="org.apache.coyote.http11.Http11AprProtocol"
     5            connectionTimeout="20000" //链接超时时长
     6            redirectPort="8443"
     7            maxThreads="500"
     8            minSpareThreads="20"
     9            acceptCount="1000"
    10            enableLookups="false"
    11            URIEncoding="UTF-8" />
  • 相关阅读:
    关于Tomcat版本的使用
    Twitter
    Thinkpad在Windows8上热键的解决方案
    关于C#中程序当前目录的小随笔
    【Network】OSPF排错及其七种状态机
    如何修改已有的ONNX模型
    安全计算环境(三)Windows服务器4
    安全计算环境(三)Linux服务器5
    安全计算环境(三)Linux服务器2
    安全计算环境(二)防火墙2
  • 原文地址:https://www.cnblogs.com/nb-blog/p/5278452.html
Copyright © 2020-2023  润新知