美文网首页
4.tomcat系统优化

4.tomcat系统优化

作者: _少年不知愁 | 来源:发表于2020-11-05 16:29 被阅读0次

1.tomcat系统优化

指标

降低响应时间
提高系统吞吐量(QPS)
提高服务的可用性

2.性能优化中使用的工具

JConsole

一个内置 Java性能分析器

jdk安装目录/bin/jconsole.exe

JMeter

一个Apache组织开发的基于Java的压力测试工具jdk安装目录/bin/jconsole.exe

下载地址:http://jmeter.apache.org/download_jmeter.cgi

性能优化测试原则

指标:正确率、CPU占有率、QPS、JVM

3.server.xml优化

tomcat8.5之后默认时NIO

tomcat-io模型.jpg

4.web.xml优化

1.去掉不必要的资源:JspServlet

2.seesion也可以移除

valve优化

移除掉AccessLogValvevalve实现都需要消耗java应用的计算时间,一般我们可以使用nginx来记录

5.tomcat线程池配置

线程池指定Web请求负载的数量

合理设置maxThreads线程数

  • acceptCount:请求等到队列大小。当Tomcat没有空闲线程处理连接请求时,新来的链接请求将放入等待队列,默认为100。当队列超过acceptCount后新连接将被拒绝。

  • maxConnections:Tomcat能处理的最大并发连接数.当超过后还会接收连接并放入等待队列(acceptCount控制),连接会等待,不能被处理。BIO默认是maxThreads. 对于NIO和NIO2,默认值为10000。对于APR /native,默认值为8192。

    仅对于NIO / NIO2,将该值设置为-1将禁用maxConnections功能,并且不计算连接数。

  • minSpareThreads:线程池最小线程数,默认为10。该配置指定线程池可以维持的空闲线程数量。(始终保持运行状态的最小线程数。 这包括活动线程和空闲线程。 如果未指定,则使用默认值10。 如果执行程序与此连接器相关联,则此属性将被忽略,因为连接器将使用执行程序而不是内部线程池执行任务。 请注意,如果配置了执行程序,则将正确记录为此属性设置的任何值,但会将其报告为(例如,通过JMX)-1,以表明未使用该值。)

  • maxThreads:线程池最大线程数,默认为200。当线程池空闲一段时间后会解释放到只保留minSpareThreads个线程。

6.提高JVM堆内存大小

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 – 指定最大栈内存

相关文章

网友评论

      本文标题:4.tomcat系统优化

      本文链接:https://www.haomeiwen.com/subject/ishavktx.html