日期:2014-05-16  浏览次数:20895 次

Apache2+Tomcat性能调整(一)

1、http://lamp.linux.gov.cn/Apache/ApacheMenu/misc/perf-tuning.html



2、Tomcat解析JSP文件,静态HTML文件、图片文件、大文件下载使用性能更好的Apache支持

???具体实施方案是,将现有Tomcat配置为8080端口,安装Apache服务器,配置为80端口,

在Apache中修改httpd.conf文件

启用proxy_module和proxy_http_module,修改的内容如下:

LoadModule proxy_module modules/mod_proxy.so

LoadModule proxy_http_module modules/mod_proxy_http.so

然后在Apache的httpd.conf文件中增加如下几行:

ProxyPass /jsp/ http://localhost:8080/

ProxyPassReverse /jsp/ http://localhost:8080/



3、加大tomcat可以使用的内存?

?? ??Tomcat默认可以使用的内存为128MB,在较大型的应用项目中,这点内存是不够的,需要调大。?

  Windows下,在文件{ tomcat_home }/bin/catalina.bat,

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

  JAVA_OPTS='-Xms【初始化内存大小】 -Xmx【可以使用的最大内存】'
  需要把这个两个参数值调大。例如:
  JAVA_OPTS='-Xms256m -Xmx512m'
  表示初始化内存为256MB,可以使用的最大内存为512MB。

?? ?一般说来,应该使用物理内存的 80% 作为堆大小。


4、加大tomcat连接数?

? ?在tomcat配置文件server.xml中的<Connector ... />配置中,和连接数相关的参数有:?

?? ??maxThreads Tomcat使用线程来处理接收的每个请求。这个值表示Tomcat可创建的最大的线程数。

?? ? acceptCount 指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理。

?? ? connectionTimeout 网络连接超时,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。通常可设置为20000毫秒。

?? ? minSpareThreads Tomcat初始化时创建的线程数。

?? ? maxSpareThreads 一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程。

?? ? compression="on" 打开压缩功能

?? ? compressionMinSize 启用压缩的输出内容大小,这里面默认为2KB?

?? ? compressableMimeType压缩类型?



?? ?修改后:

?? ?<Connector port="8080" protocol="HTTP/1.1" ??

??????????????? maxHttpHeaderSize="8192" useBodyEncodingForURI="true"??

??????????????? maxThreads="1000"

??????????????? redirectPort="8443"??

??????????????? enableLookups="false"??

??????????????? compression="on"???

??????????????? compressionMinSize="2048"??

?? ? ? ? ? ? ? ?compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"???

??????????????? connectionTimeout="20000"??

??????????????? disableUploadTimeout="true"??

??????????????? />

5、使用APR使得Tomcat的性能提高?