数据吧www.shujuba.net - 专注于企业级云服务器、云计算、网站高防CDN加速、服务器租用托管服务 - 站长资讯中心

数据吧 - 致力提供Linux(CentOS),Win2003,Win2008系统基础资料、vps云服务器安全防护知识、以及PHP,ASP环境搭建等。为各大中小站长、公司企业网站、虚拟主机、香港美国韩国日本台湾vps云服务器用户以及初学者或爱好者提供有用的资料文章。帮助大家学习和收集有用的教程。我们的宗旨是为大众站长提供优质的服务。

Tomcat 连接器选项设置及性能优化

    Tomcat是我们经常使用的 servlet容器之一,甚至很多线上产品都使用 Tomcat充当服务器。而且优化后的Tomcat性能提升显著,本文从以下几方面进行分析优化。
一、内存优化
      默认情况下Tomcat的相关内存配置较低,这对于一些大型项目显然是不够用的,这些项目运行就已经耗费了大部分内存空间,何况大规模访问的情况。即使是本文中的这个只有一个页面的超小项目,在并发达到一定程度后也会抛出以下类似异常:
Java代码  收藏代码
严重: Exception invoking periodic operation: java.lang.OutOfMemoryError: Java heap space 
 
严重: Error processing request java.lang.OutOfMemoryError: GC overhead limit exceeded 
        说明Tomcat已经无力支持访问处理,内部GC也已经“无能无力”。所以一般情况下我们需要重新配置Tomcat的相关内存大小。
        1.修改内存等 JVM相关配置
        Linux下修改TOMCAT_HOME/bin/catalina.sh,在其中加入,可以放在CLASSPATH=下面:
Java代码  收藏代码
JAVA_OPTS="-server -XX:PermSize=512M -XX:MaxPermSize=1024m -Xms2048m -Xmx2048m" 
        windows下修改TOMCAT_HOME/bin/catalina.bat,在其中加入,可以放在set CLASSPATH=下面:
Java代码  收藏代码
set JAVA_OPTS=-server -XX:PermSize=512M -XX:MaxPermSize=1024m -Xms2048m -Xmx2048m 
        这些参数在我们学习JVM部分文章时已经都认识过了,不过这里还是简单介绍下:
        -server:启用 JDK的 server 版本;
        -Xms:Java虚拟机初始化时堆的最小内存,一般与 Xmx配置为相同值,这样的好处是GC不必再为扩展内存空间而消耗性能;
        -Xmx:Java虚拟机可使用堆的最大内存;
        -XX:PermSize:Java虚拟机永久代大小;
        -XX:MaxPermSize:Java虚拟机永久代大小最大值;
        除了这些参数外您还可以根据具体需要配置其他参数,参数的配置可以参考JVM参数的配置
        2.验证
        设置成功后我们可以利用JDK自带的工具进行验证,这些工具都在JAVA_HOME/bin目录下:
        1)jps:用来显示本地的java进程,以及进程号,进程启动的路径等。
        2)jmap:观察运行中的JVM 物理内存的占用情况,包括Heap size , Perm size 下载地址 等。
        进入命令行模式后,进入JAVA_HOME/bin目录下,然后输入jps命令:
Java代码  收藏代码
jps 
#显示以下结果 
2340 Bootstrap 
6696 Jps 在$CATALINA_HOME/conf/server.xml配置文件中的Connetctor节点,和连接数相关的参数配置和优化。

«1»

Powered By 站长资讯中心

站长资讯中心为您提供各类站长资讯,站长资料,我们的宗旨是为大众站长服务。您将在这里得到最新、最全、最专业的行业资讯及网站建设技术文档!