https://mp.weixin.qq.com/s/7crA3mmEifiDr7vWVKw2pg
四、调优
1、Tomcat的运行模式有三种:
BIO
性能比较低下,没有经过任何优化处理和支持。一个线程处理一个请求。缺点:并发量高时,线程数较多,浪费资源。Tomcat7或以下,在Linux系统中默认使用这种方式。
NIO
nio(new I/O),Java SE 1.4 及后续版本提供一种新的I/O操作方式(即java.nio包及其子包)。Java nio是一个基于缓冲区、并能提供非阻塞I/O操作的Java API,因此nio
也被看成是non-blocking I/0的缩写。它拥有比传统I/O操作(bio)更好的并发运行性能。
利用Java的异步IO处理,可以通过少量的线程处理大量的请求。
Tomcat 8在Linux系统中默认使用这种方式。
Tomcat 7必须修改Connector 配置来启动:
<Connector port="8080"protocol="org.apache.coyote.http11.Http11NioProtocol"
connectionTimeout="20000" redirectPort="8443"/>
APR
安装起来最困难,但是从操作系统级别来解决异步的IO问题,能够大幅度的提高性能。即Apache PortableRuntime,从操作系统层面解决IO阻塞问题。
Tomcat 7 或Tomcat 8在Win7或以上的系统中启动默认使用这种方式。
Linux如果安装了apr或native,Tomcat直接启动就支持apr。