`
eriol
  • 浏览: 405506 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Tomcat优化经验

阅读更多

最近用httpclient做performance testing时,发现当线程加到150时服务端就会抛出socket资源用尽的错误,根本没法再往上加,响应的速度也是相当的慢,后来经过研究,发现在server.xml中修改以一部分,增加节点数目,可以很好的提高性能:

 

<Connector port="8080" maxHttpHeaderSize="8192" maxThreads="150"

   minSpareThreads="30" maxSpareThreads="75" enableLookups="false"

   redirectPort="8443" acceptCount="100" connectionTimeout="20000"

   disableUploadTimeout="true" />

 

 以上为默认配置,几个参数意义分别为:

  • maxThreads:Tomcat使用线程来处理接收的每个请求。这个值表示Tomcat可创建的最大的线程数。
  • acceptCount:指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理。
  • connnectionTimeout:网络连接超时,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。通常可设置为30000毫秒。
  • minSpareThreads:Tomcat初始化时创建的线程数。
  • maxSpareThreads:一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程

 

  对于Connector 8443也有相应的设置,如果同时会用到http与https,应合理分配这两个数据.如果只用到其中的一个,可以将另外一个尽量设置小一点.

 

  此外,还可以给Java虚拟机设置使用的内存来提高性能,Tomcat默认可以使用的内存为128MB,在较大型的应用项目中,这点内存是不够的,需要调大。具体方法为:

 

  Windows下,在文件{tomcat_home}/bin/catalina.bat;Unix下,在文件{tomcat_home}/bin/catalina.sh的前面,增加如下设置:

 

  JAVA_OPTS='-Xms[初始化内存大小] -Xmx[可以使用的最大内存]'

 

  需要把这个两个参数值调大。例如:

 

JAVA_OPTS='-Xms256m -Xmx512m'
 

  测试发现,当tomcat线程数增大,但没有超过最大线程数时,平均响应时间会增大,但这不意味着tomcat在线程增多时响应速度变慢.在测试数据中,我们发现,由于线程数增多,在请求时需要排队,导致一部分请求会一直排队,随着线程数的增多,排队等待的最大时间也会越来越大,而这些大数据才是导致平均响应时间变大的罪魁祸首。响应时间大于3s的请求占总请求的比例一直维持在3%-5%。

 

此外,代码中的System.out语句会严重影响代码执行的效率,就将这些为必要的语句在调试完成之后全部删除以提高效率。

分享到:
评论

相关推荐

    Tomcat性能优化

    【标签】:“Tomcat优化”进一步确认了我们要关注的是Tomcat的整体优化策略,这包括但不限于启动速度、并发能力、内存使用效率等方面。 【文件】:“Tomcat7性能优化调优.docx”可能包含了关于Tomcat7性能优化的...

    tomcat日志切割和tomcat优化

    【标题】:Tomcat日志切割与Tomcat优化 【内容】: Tomcat作为流行的Java Servlet容器,其性能和日志管理是运维人员关注的重点。日志切割是保持日志文件大小合理、便于管理和分析的重要手段,而Tomcat优化则关乎...

    tomcat优化

    Tomcat 优化方案 Tomcat 是一个流行的 Java 服务器,广泛应用于 Web 应用程序的开发中。然而,Tomcat 的性能优化却是许多开发者头疼的问题。为了帮助开发者解决这个问题,本文将介绍 Tomcat 优化方案的七个方面,...

    Tomcat优化相关问题.pdf

    Tomcat 优化相关问题 Tomcat 优化是指对 Apache Tomcat 服务器进行性能调整和优化,以提高其处理请求的速度和效率。下面是 Tomcat 优化相关问题的详细知识点: 一、JVM 参数调优 在 Tomcat 中,JVM 参数调优是...

    Tomcat优化

    Tomcat优化是提升Java Web应用性能的关键步骤,特别是在使用Tomcat 7这个版本时,优化工作显得尤为重要。本文将深入探讨基于Tomcat 7的优化策略,包括配置调整、AJP连接器的禁用以及JVM参数的优化。 一、Tomcat配置...

    TOMCAT优化

    ### TOMCAT优化详解 #### 一、引言 随着互联网技术的发展及企业级应用的不断扩展,服务器性能优化成为提高用户体验、确保业务稳定的关键因素之一。Apache Tomcat作为一款广泛使用的开源Servlet容器,其性能直接...

    tomcat性能优化

    【标题】:“Tomcat性能优化” 【描述】:“理解Tomcat内部结构,提升其运行效率” 【标签】:“Tomcat 性能 优化” 【正文】: Tomcat性能优化是一项关键的任务,尤其对于承载大型应用的服务器来说。优化主要...

    Tomcat优化-Tomcat 的性能调优的原理和方法

    ### Tomcat优化——Tomcat 的性能调优的原理和方法 #### 一、概述 Tomcat作为一款广泛使用的开源Web服务器容器,其性能直接影响到基于它的应用程序的表现。本文旨在介绍Tomcat性能调优的基本原理与具体实施方法,...

    Tomcat7性能优化

    #### 三、Tomcat优化配置详解 ##### 3.1 配置Tomcat管理员账户 为了更好地管理和监控Tomcat服务器,首先需要设置管理员账户。在`conf/tomcat-users.xml`文件中添加用户角色,如下所示: ```xml ...

    TOMCAT架构服务器优化指南

    《TOMCAT架构服务器优化指南》是一本深入探讨TOMCAT服务器优化的专业书籍,由刘光瑞撰写,并由人民邮电出版社出版。该书聚焦于如何提升TOMCAT服务器的性能,确保系统的稳定性和高效运行。TOMCAT作为一款广泛应用的...

    tomcat性能优化.pdf

    在进行Tomcat优化时,需要从多个维度入手,包括但不限于配置优化、部署与测试、参数调整、源码理解以及JVM参数调整等。 配置优化是Tomcat性能优化的第一步,也是最基础的一步。首先,应该选择合适的Tomcat版本进行...

    linux下tomcat安装和优化

    Linux 下 Tomcat 的安装和优化 Tomcat 是一个功能强大且流行的 Java 服务器,广泛应用于 Web 应用程序的开发和部署。在 Linux 服务器下安装和优化 Tomcat 是非常重要的,本文将详细介绍 Tomcat 的安装和优化过程。 ...

    TOMCAT-5.5.X优化配置

    很好的TOMCAT-5.5.X优化配置文档,详细说明了各个的参数设置

    tomcat集群优化详细配置

    【Tomcat集群优化详细配置】 在IT行业中,服务器性能优化是一项关键任务,特别是在高并发、大规模用户访问的场景下。Tomcat,作为广泛使用的Java应用服务器,常常需要通过集群部署来提升系统的可用性和可伸缩性。...

    Tomcat性能优化.rar

    《深入探讨:Tomcat性能优化》 在Java Web开发领域,Tomcat作为一款广泛应用的开源Servlet容器,其性能优化对于提升整个Web应用的响应速度和处理能力至关重要。本篇文章将全面解析Tomcat性能优化的各个方面,帮助...

    Tomcat7 性能优化

    ### Tomcat7 性能优化详解 #### 一、引言 随着互联网应用的日益增长,网站并发访问的需求越来越高,而作为一款广泛使用的开源Web容器,Apache Tomcat 的性能优化显得尤为重要。本文将针对Tomcat7进行一系列的性能...

    tomcat 启动优化和并发并发优化配置.rar

    《Tomcat启动优化与并发优化配置详解》 Tomcat,作为Java Web应用最常用的服务器,其性能优化对于提升系统整体效率至关重要。本文将深入探讨Tomcat的启动优化和并发优化配置,帮助开发者们更好地理解并实践这些关键...

Global site tag (gtag.js) - Google Analytics