欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

tomcat性能优化(性能总览)

程序员文章站 2022-10-29 10:31:35
1.增加jvm堆内存大小 1)jvm通常不去调用垃圾回收器,所以服务器可以更多关注处理web请求,并要求尽快完成。 2)更改文件(catalina.sh)...

1.增加jvm堆内存大小

1)jvm通常不去调用垃圾回收器,所以服务器可以更多关注处理web请求,并要求尽快完成。

2)更改文件(catalina.sh)

 java_opts=”-djava.awt.headless=true -dfile.encoding=utf-8
    -server -xms1024m -xmx1024m
    -xx:newsize=512m -xx:maxnewsize=512m -xx:permsize=512m
    -xx:maxpermsize=512m -xx:+disableexplicitgc”
  -xms – 指定初始化时化的栈内存
  -xmx – 指定最大栈内存

2.修复jre内存泄漏

1)最新的tomcat版本6.0.26及以上就可以解决这个错误,因为它包含了一个监听器来处理jre和permgen的内存泄漏。

2)更改server.xml

 <listener classname=“org.apache.catalina.core.jrememoryleakpreventionlistener” />

3.线程池设置

maxthreads的值应该根据流量的大小,

如果值过低,将有没有足够的线程来处理所有的请求,请求将进入等待状态,只有当一个的处理线程释放后才被处理;

如果设置的太大,tomcat的启动将花费更多时间。因此它取决于我们给maxthreads设置一个正确的值。

其中和最大连接数相关的参数为maxprocessors 和 acceptcount 。如果要加大并发连接数,应同时加大这两个参数。

<connector port=“9027”
  protocol=“http/1.1”
  maxhttpheadersize=“8192”
  maxthreads=“1000”
  minsparethreads=“100”
  maxsparethreads=“1000”
  minprocessors=“100”       最小空闲连接线程数,用于提高系统处理性能
  maxprocessors=“1000”      最大连接线程数,即:并发处理的最大请求数
  enablelookups=“false”      是否反查域名,取值为: true 或 false 。为了提高处理能力,应设置为 false
  compression=“on”
  compressionminsize=“2048”
  compressablemimetype=“text/html,text/xml,text/javascript,text/css,text/plain”
  connectiontimeout=“20000”    网络连接超时,单位:毫秒。设置为 0 表示永不超时,这样设置有隐患的。通常可设置为30000 毫秒。
  uriencoding=“utf-8”
  acceptcount=“1000”       允许的最大连接数,应大于等于 maxprocessors
  redirectport=“8443”
  disableuploadtimeout=“true”/>

4.压缩

compression=“on”
compressionminsize=“2048”

当文件的大小大于等于2048bytes时才会压缩

5.数据库性能调优

tomcat性能在等待数据库查询被执行期间会降低

确保所有数据库连接正确地关闭。

最大空闲数(maxidle),最大连接数(maxactive),最大建立连接等待时间(maxwait)属性的值。

6.其它选项

开启浏览器的缓存,这样读取存放在webapps文件夹里的静态内容会更快,大大推动整体性能
每当开机时,tomcat服务器应当自动地重启

一般情况下https请求会比http请求慢。如果你想要更好的安全性,即使慢一点我们还是要选择https

设置tomcat启用gzip压缩

compression=”on” 打开压缩功能
compressionminsize=”50″ 启用压缩的输出内容大小,默认为2kb
nocompressionuseragents=”gozilla, traviata” 对于以下的浏览器,不启用压缩
compressablemimetype=”text/html,text/xml,text/javascript,text/css,text/plain“ 哪些资源类型需要压缩

以上所述是小编给大家介绍的tomcat性能优化(性能总览),希望对大家有所帮助