• Tomcat优化


    由于Tomcat的运行依赖于JVM,从虚拟机的角度我们把Tomcat的调整分为外部环境调优自身调优两类来描述。 

    1.外部环境调优

     Tomcat需要依赖Java虚拟机运行。根据客户选用的主机的操作系统选择对应的 JDK的版本。无论哪个厂商的JDK,都建议使用最新的版本。 
            虚拟机可通过命令行的方式改变虚拟机使用内存的大小。如下表所示有两个参数用来设置虚拟机使用内存的大小。 
            参数                               描述 
            -Xms<size>                JVM初始化堆的大小 
            -Xmx<size>                JVM堆的最大值 
            Tomcat默认可以使用的内存为128MB,在较大型的应用项目中,这点内存是不够的,需要调大。 
      JAVA_OPTS=‘-Xms【初始化内存大小】 -Xmx【可以使用的最大内存】’' 

    windows修改TOMCAT_HOME/bin/catalina.bat,在前面加入

    (export JAVA_HOME='/home/ftpuser/xjSheetHome/java/jdk1.5.0_22/')

    set JAVA_OPTS=-XX:PermSize=64M -XX:MaxPermSize=128m -Xms512m -Xmx1024m

    最大堆内存是1024m,对于现在的硬件还是偏低,实施时,还是按照机器具体硬件配置优化。

    2.自身调优

    2.1tomcat 线程优化

    这里以tomcat7的参数配置为例,需要修改conf/server.xml文件,主要是优化连接配置,关闭客户端dns查询。

    <Connector port="8080"   
               protocol="org.apache.coyote.http11.Http11NioProtocol"  
               connectionTimeout="20000"  
               redirectPort="8443"   
               maxThreads="500"   
               minSpareThreads="20"  
               acceptCount="100" 
               disableUploadTimeout="true" 
               enableLookups="false"   
               URIEncoding="UTF-8" />

    2.2设置session时间

    confweb.xml中通过参数指定:

        <session-config>  

            <session-timeout>180</session-timeout>    

        </session-config>

    单位为分钟。

    2.3配置tomcat禁止目录下的文件

    在{tomcat_home}/conf/web.xml中,把listings参数设置成false即可,如下:

     3.服务器资源
    对于静态页面最好是能够缓存起来,这样就不必每次从磁盘上读。这里我们采用了Nginx作为缓存服务器,将图片、css、js文件都进行了缓存,有效的减少了后端tomcat的访问。
      另外,为了能加快网络传输速度,开启gzip压缩也是必不可少的。但考虑到tomcat已经需要处理很多东西了,所以把这个压缩的工作就交给前端的Nginx来完成。
      除了文本可以用gzip压缩,其实很多图片也可以用图像处理工具预先进行压缩,找到一个平衡点可以让画质损失很小而文件可以减小很多。
    4.采用集群
    单个服务器性能总是有限的,最好的办法自然是实现横向扩展,那么组建tomcat集群是有效提升性能的手段。我们还是采用了Nginx来作为请求分流的服务器,后端多个tomcat共享session来协同工作。
  • 相关阅读:
    灰哥的二叉树
    BZOJ1029: [JSOI2007]建筑抢修[模拟 贪心 优先队列]
    POJ1155TELE[树形背包]
    HDU4003Find Metal Mineral[树形DP 分组背包]
    POJ1837 Balance[分组背包]
    HDU2639Bone Collector II[01背包第k优值]
    POJ3666Making the Grade[DP 离散化 LIS相关]
    HDU2955 Robberies[01背包]
    HDU2191悼念512汶川大地震遇难同胞——珍惜现在,感恩生活[多重背包]
    POJ1014Dividing[多重背包可行性]
  • 原文地址:https://www.cnblogs.com/xumaodun/p/4867405.html
Copyright © 2020-2023  润新知