tomcat源码介绍(废)

protocol

  • 采用bio的情况是
org.apache.coyote.http11Protocol (BIO) 一夫一妻制度
org.apache.coyote.http11NIOProtocol (NIO) 一夫多妻制度
org.apache.coyote.http11APrProtocol (Apr)
org.apache.coyote.http11NIO2Protocol (AIO)
介绍 描述
BIO 阻塞时IO。即tomcat使用传统java.io进行操作,该模式下每个请求都会创建一个线程,对性能开销大,不适合高并发场景,优点稳定,适合连接数目小且固定架构,
NIO 非阻塞式IP。jdk1.4知乎实现新io,该模式基于多路复合选择器检测连接状态在通知线程处理,从而达到非阻塞式的目的,比传统BIO有更好支持并发性能,TOMCAT8.0知乎默认采用该模式
APR 全称是Apache Portable Runtime(Apache可移植运行库)是apache http服务器的支持库,可以简单得理解为,tomcat将以jni得形式调用apache http服务器核心动态链接库来处理文件读取或网络传输操作,使用需要编译安装apr库
AIO 一部非阻塞式IP。jdk1.7之后支持,与nio不同在于不需要多路复用选择器,而是请求处理线程执行完线程进行回调通知,已继续执行后续操作,tomcat8 之后支持

tomcat 配置

  • 配置server.xml文件当中得 connector protocol=“http/1.1” 就是bio
  • tomcat 8.0之hi默认采用该模式,nio protocol=“org.apache.coyote.http11NIOProtocol”
  • 同上
    tomcat源码介绍(废)