tomcat的三种模型的比较及选择

tomcat在工作类型上有三种模式,分别的是BIO,APR,NIO。
Tomcat Connector的三种不同的运行模式性能相差很大,因此对这三种模型的行能的了解,对我们生产使用优化最佳性能的tomcat,尤为重要。
这三种模式的不同之处如下:
BIO:
一个线程处理一个请求。缺点:并发量高时,线程数较多,浪费资源。
Tomcat7或以下,在Linux系统中默认使用这种方式。
NIO:
利用Java的异步IO处理,可以通过少量的线程处理大量的请求。
Tomcat8在Linux系统中默认使用这种方式。
Tomcat7必须修改Connector配置来启动:

APR:
即Apache Portable Runtime,从操作系统层面解决io阻塞问题。
Tomcat7或Tomcat8在Win7或以上的系统中启动默认使用这种方式。
Linux如果安装了apr和native,Tomcat直接启动就支持apr。

官方对这三种的区别的详细说明:

下面文章会详解介绍关于apr模型的详细部署方式及常见问题解析。
下图说明了,tomcat是基于apr的模型启动。
tomcat apr模式启动

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: