多测师讲解性能测试_____Tomcat调优的方法_____高级讲师肖sir

性能调优

1、调优tomcat的线程池

1、1打开tomcat下的conf找到server.xml

多测师讲解性能测试_____Tomcat调优的方法_____高级讲师肖sir

 

 

 

多测师讲解性能测试_____Tomcat调优的方法_____高级讲师肖sir

 

 

 name      : 执行器(线程池)的名字

namePrefix : 指定线程池中的每一个线程的name前缀

maxThreads:线程池中最大的线程数量

假设:请求的数量超过了“700,这将不是意味着将maxThreads属性值设置为“700解决方案是使用“Tomcat集群”。
也就是说,如果有“500”请求,两个Tomcat实例设置“maxThreads= 250”,而不在单Tomcat实例的情况下设置maxThreads=500。

minSpareThreads :线程池中允许空闲的线程数量(多余的线程都杀死)

maxIdLeTime:一个线程空闲多久算是一个空闲线程

其他配置我们可以看tomcat的配置文档

 

(2)调优tomcat的连接器Connector

tomcat/conf/server.xml   配置Connector

executor
指定这个连接器所使用的执行器(线程池)

多测师讲解性能测试_____Tomcat调优的方法_____高级讲师肖sir

 

 

 多测师讲解性能测试_____Tomcat调优的方法_____高级讲师肖sir

2.1bleLookups="false":

关闭dns解析,减少性能损耗

2.2minProcessors:服务器启动时创建的最少线程数

2.3maxProcessors:最大可以创建的线程数

2.4acceptCount="1000"  :线程池中的线程都被占用,允许放到队列中的请求数

2.5maxThreads="3000"  :最大线程数

2.6和压缩有关系的配置
如果已经对代码进行了动静分离,静态页面和图片等数据就不需要 Tomcat 处理了,
那么也就不需要配置在 Tomcat 中配置压缩了

一个完整的配置

多测师讲解性能测试_____Tomcat调优的方法_____高级讲师肖sir

 

 (3)通过修改tomcat的运行模式(BI阻塞模式)

 

多测师讲解性能测试_____Tomcat调优的方法_____高级讲师肖sir

 

 Tomcat8以下版本,默认使用的就是BIO(阻塞式IO)模式

对于每一个请求都要创建一个线程来进行处理,不适合高并发

NIO

Tomcat8以上版本,默认使用的就是NIO模式

非阻塞式Io

 

APR(Apache Portable Runtime)

(1mcat生产环境运行的首选方式

(2操作系统未安装apr或者apr路径未指到Tomcat默认可识别的路径,
则apr模式无法启动,自动切换启动nio模式。
所以必须要安装apr和native,直接启动就支持apr

(3是从操作系统级别解决异步IO问题,apr的本质就是使用jni(java native interface)
技术调用操作系统底层的IO接口,所以需要提前安装所需要的依赖

(4Tomcat对静态文件的处理性能,当然也可以采用动静分离

禁用AJP连接器

Apache JServer Protocol
使用Nginx+tomcat的架构,所以用不着AJP协议,所以把AJP连接器禁用

多测师讲解性能测试_____Tomcat调优的方法_____高级讲师肖sir

 

 

二、jvm条用

tomcat是运行在jvm上的,所以对jvm的调优也是非常有必要的

2、1调优内存

多测师讲解性能测试_____Tomcat调优的方法_____高级讲师肖sir

 

 多测师讲解性能测试_____Tomcat调优的方法_____高级讲师肖sir

 

 vim catalina.sh

多测师讲解性能测试_____Tomcat调优的方法_____高级讲师肖sir

 

 调整堆大小的的目的是最小化垃圾收集的时间,以在特定的时间内最大化处理客户的请求,

多测师讲解性能测试_____Tomcat调优的方法_____高级讲师肖sir

 

参数: JAVA_OPTS="-Djava.awt.headless=true -Dfile.encoding=UTF-8-server -Xms1024m -Xmx1024m     -XX:NewSize=512m -XX:MaxNewSize=512m -XXermSize=512m -XX:MaxPermSize=512m -XX:+Disabl    eExplicitGC"

上一篇:CDN方式引入的Vue 首页白屏解决办法


下一篇:Tomcat运行模式连接数和线程池