温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

好程序员Java学习路线分享实战Tomcat性能优化

发布时间:2020-06-08 17:22:00 来源:网络 阅读:138 作者:wx5d42865f47214 栏目:编程语言

  好程序员Java学习路线分享实战Tomcat性能优化,前言,由于不同的硬件配置导致默认的tomcat配置无法达到最佳的性能,导致我们需要对tomcat的进行相应的配置调整。

Tomcat内存优化

配置信息:JAVA_OPTS=’-Xms1024m -Xmx2048m -XX: PermSize=256M -XX:MaxNewSize=256m -XX:MaxPermSize=256m’

将以上配置信息在tomcat中的catalina.sh 中配置如下图所示:

好程序员Java学习路线分享实战Tomcat性能优化

参数描述:

-server 启用jdk 的 server 版;

-Xms java虚拟机初始化时的最小内存;

-Xmx java虚拟机可使用的最大内存;

-XX: PermSize 内存永久保留区域

-XX:MaxPermSize 内存最大永久保留区域

根据不同的配置硬件设备可适当调整参数的大小,内存大、cpu核数多,可对相应的参数设置过大,反之设置适当偏小。

Tomcat并发优化

并发优化主要在conf中server.xml文件中配置。配置代码如下:

 <Connector port="8080"

protocol="HTTP/1.1"

maxHttpHeaderSize="8192"

minProcessors="100"

maxProcessors="1000"

acceptCount="1000"

redirectPort="8443"

disableUploadTimeout="true"/>

参数说明

maxThreads 客户请求最大线程数

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

maxSpareThreads Tomcat连接器的最大空闲 socket 线程数

enableLookups 若设为true, 则支持域名解析,可把 ip 地址解析为主机名

redirectPort 在需要基于安全通道的场合,把客户请求转发到基于SSL 的 redirectPort 端口

acceptAccount 监听端口队列最大数,满了之后客户请求会被拒绝(不能小于maxSpareThreads )

connectionTimeout 连接超时

minProcessors 服务器创建时的最小处理线程数

maxProcessors 服务器同时最大处理线程数

URIEncoding URL统一编码

效果图如下:

好程序员Java学习路线分享实战Tomcat性能优化

Tomcat缓存优化

缓存优化主要在conf中server.xml文件中配置。配置代码如下:

<Connector port="8080"

protocol="HTTP/1.1"

maxHttpHeaderSize="8192"

maxThreads="1000"

minSpareThreads="100"

maxSpareThreads="1000"

minProcessors="100"

maxProcessors="1000"

enableLookups="false"

compression="on"

compressionMinSize="2048"

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

connectionTimeout="20000"

URIEncoding="utf-8"

acceptCount="1000"

redirectPort="8443"

disableUploadTimeout="true"/>

参数说明

maxThreads 客户请求最大线程数

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

maxSpareThreads Tomcat连接器的最大空闲 socket 线程数

enableLookups 若设为true, 则支持域名解析,可把 ip 地址解析为主机名

redirectPort 在需要基于安全通道的场合,把客户请求转发到基于SSL 的 redirectPort 端口

acceptAccount 监听端口队列最大数,满了之后客户请求会被拒绝(不能小于maxSpareThreads )

connectionTimeout 连接超时

minProcessors 服务器创建时的最小处理线程数

maxProcessors 服务器同时最大处理线程数

URIEncoding URL统一编码

compression 打开压缩功能

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

compressableMimeType 压缩类型

connectionTimeout 定义建立客户连接超时的时间. 如果为 -1, 表示不限制建立客户连接的时间

效果图如下:

好程序员Java学习路线分享实战Tomcat性能优化

总结

配置了内存、并发、缓存优化后,同配置硬件设备可提高多倍有效访问率。


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI