Tomcat 7.0.x性能优化

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。

是目前的开发焦点。它在汲取了Tomcat 6.0.x优点的基础上,实现了对于Servlet 3.0、JSP 2.2和EL 2.2等特性的支持。除此以外的改进列表如下:

· Web应用内存溢出侦测和预防

· 增强了管理程序和服务器管理程序的安全性

· 一般 CSRF保护

· 支持web应用中的外部内容的直接引用

· 重构 (connectors, lifecycle)及很多核心代码的全面梳理

1. 配置方法

  • 启动内存参数的配置

tomcat/bin/catalina.bat 如果是linux 就是 catalina.sh

在rem 的后面增加如下参数

set JAVA_OPTS= -Xms256m -Xmx256m -XX:MaxPermSize=64m

  • 修改Tomcat的JDK目录

打开tomcat/bin/catalina.bat

在最后一个rem后面增加

set JAVA_HOME=C:\Program Files\Java\jdk1.8.0

  • 增加虚拟目录

/tomcat/conf/server.xml

第一行是以前默认存在的,第二行是新增的

<Context path="" docBase="ROOT" debug="0" reloadable="true"></Context>

<Context path="/jsp/a" reloadable="true" docBase="E:\workplace\www.java2000. net\WebContent" />

使用默认配置的tomcat,另外虚拟目录也可这设置:

<Context path="/test" docBase="webContent" reloadable="true"/>

因为默认情况下,tomcat启动过程中配置虚拟目录的时候会从 webapps目录下查找webContent应用。

这样配置好了,即使以后从一台服务器移植到另一台服务器,不做任何修改也能运行起来。

  • GET方式URL乱码问题解决

打开 tomcat/conf/server.xml

查找下面这部分,在最后增加一段代码就可以了。

<Connector port="80" maxHttpHeaderSize="8192"

.................

URIEncoding="UTF-8" useBodyEncodingForURI="true"

...............

/>

其中的UTF-8 请根据你的需要自己修改,比如GBK

  • 虚拟主机配置文件

tomcat/conf/server.xml

<!-- 默认的主机 -->

<Host name="localhost" appBase="webapps"

unpackWARs="true" autoDeploy="true"

xmlValidation="false" xmlNamespaceAware="false">

<Context path="" docBase="ROOT" debug="0" reloadable="true"></Context>

...

</host>

<!-- 以下是新增的虚拟主机 -->

<Host name="" appBase="webapps"

unpackWARs="true" autoDeploy="true"

xmlValidation="false" xmlNamespaceAware="false">

<Context path="" docBase="d:\" debug="0" reloadable="true"></Context>

<!-- 虚拟目录 -->

<Context path="/count" docBase="d:\counter.java2000. net" debug="0" reloadable="true"></Context>

</Host>

<Host name="java2000. net" appBase="webapps"

unpackWARs="true" autoDeploy="true"

xmlValidation="false" xmlNamespaceAware="false">

<Context path="" docBase="d:\ " debug="0" reloadable="true"></Context>

<Context path="/count" docBase="d:\counter.java2000. net" debug="0" reloadable="true"></Context>

</Host>

2. Tomcat优化

思路:

首先要掌握未优化之前,服务器性能现状; 
        设置虚拟机内存,性能提升明显; 
        设置tomcat运行模式略微有提高; 
        设置tomcat线程池,一般设置的比较大以免成为瓶颈; 
        逐步递增的性能调试计划,从较少请求数,较低并发开始逐步递增。直到性能明显下降位置; 
        以吞吐率、并发、响应时间等为关键性能指标; 
        区分裸奔性能和分布式调用的性能; 
        尽量覆盖全部代码运行,服务启动要为性能测试做特殊处理(callId,timeStamp); 
        做AB压力测试,可以编写个shell夜间运行并将结果重定向;

实现:

  (1)屏蔽AJP


  (2)启用NIO或者APR模式运行 


 (3)调整nio的线程池


 (4)调整内存


 (5)启用APR


 (6)调整线程池

时间: 2024-12-25 17:15:44

Tomcat 7.0.x性能优化的相关文章

最全 webpak4.0 打包性能优化清单

最全 webpak4.0 打包性能优化清单 webpack4.0如何进行打包优化? 无非是从两个角度进行优化,其一:优化打包速度,其二:优化打包体积,送你一份打包性能优化清单 1.使用loader的时候尽量指定exclude和inlucde来提高文件查找效率,避免不必要的查找,设置noParse参数 module: { noParse: /jquery/, // 不去解析jquery中的依赖 rules:[ { test: /\.js?$/, use: [ { loader: 'babel-lo

Tomcat安全配置与性能优化

Tomcat 是 Apache软件基金会下的一个免费.开源的WEB应用服务器,它可以运行在 Linux 和 Windows 等多个平台上,由于其性能稳定.扩展性好.免费等特点深受广大用户喜爱.目前,很多互联网应用和企业应用都部署在 Tomcat 服务器上,比如我们公司,哈. 之前我们 tomcat 都采用的是默认的配置,因此在安全方面还是有所隐患的.上周对测试环境的所有服务器的tomcat都做了安全优化,其间也粗略做了一些性能优化,这里就简单记录分享下! 一.版本安全 升级当前的tomcat版本

tomcat 安全规划及性能优化

tomcat 在生产环境下安全规范 1.telnet端口的修改<Server port="8005" shutdown="SHUTDOWN"> 将8005端口修改或shutdown指令字符创做修改比如shutdown="dangji" 2.ajp连接端口的保护:<Connector port="8009" protocol="AJP/1.3" redirectPort="8443

MySQL &#183; 8.0版本更新 &#183; 性能优化篇

摘要: 本文主要总结下MySQL在8.0版本和性能相关的一些改动,随着新的小版本的发布,本文将不断进行更新,直到正式GA. 已更新版本MySQL 8.0.0MySQL 8.0.0 WL#9387: InnoDB: Group purging of rows by table ID 这个问题最早是faceb... 本文主要总结下MySQL在8.0版本和性能相关的一些改动,随着新的小版本的发布,本文将不断进行更新,直到正式GA. MySQL 8.0.0 WL#9387: InnoDB: Group

tomcat 9.0.4 性能调优

tomcat9.0.4 参考了网上的一些优化参数,但是在启动中发现 有2个报错: 11-Feb-2018 15:57:23.293 警告 [main] org.apache.catalina.startup.SetAllPropertiesRule.begin [SetAllPropertiesRule]{Server/Service/Connector} Setting property 'maxSpareThreads' to '200' did not find a matching pr

Tomcat介绍及性能优化

一.Tomcat简单介绍: Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选. 版本介绍:现在版本更新到 Apache Tomcat 8.x,但是Apache Tomcat 7.x是目前开发的焦点.Apache Tomcat 7.x它在汲取了Tomcat 6.0.x优点的基础上,实现了对于Servlet 3.0.JSP 2.2和EL 2.2等特性的支持. 除此以外的改进列表如下:

tomcat性能优化Server——Connector

该元素可用于Tomcat 6.0.11以及更高版本. 允许您为一个Service的所有Connector配置一个共享线程池.在运行多个Connector的状况下,这样处理非常有用,而且每个Connector必须设置一个maxThread值,但不希望Tomcat实例并发使用的线程最大数永远与所有连接器maxThread数量的总和一样高. 这是因为如果这样处理,则需要占用太多的硬件资源.相反,您可以使用Executor元素配置一个共享线程池,而且所有的Connector都能共享这个线程池. 警告:为

Tomcat性能优化及JVM内存工作原理

Java性能优化原则:代码运算性能.内存回收.应用配置(影响Java程序主要原因是垃圾回收,下面会重点介绍这方面) 代码层优化:避免过多循环嵌套.调用和复杂逻辑.   Tomcat调优主要内容如下: 1.增加最大连接数 2.调整工作模式 3.启用gzip压缩 4.调整JVM内存大小 5.作为Web服务器时,与Apache整合或Nginx 6.合理选择垃圾回收算法 7.尽量使用较新JDK版本   生产配置实例: 1 2 3 4 5 6 7 8 9 10 11 12 13 <Connectorpor

tomcat7.0性能优化-挑战极限完整版

0 测试结果 参考精简版的空跑测试结论 http://phl.iteye.com/blog/1868206 1 tomcat 1.1 tomcat运行模式 Connector/protocol org.apache.coyote.http11.Http11Protocol - blocking Java connector org.apache.coyote.http11.Http11NioProtocol - non blocking Java connector org.apache.coy