根据以下文章:http://java.dzone.com/articles/understanding-tomcat-nio,了解Tomcat实例是否使用NIO(而不是BIO)的方法是查找:
INFO: Initializing ProtocolHandler ["http-nio-8080"]
在我的Tomcat服务器上,我有:
grep "Initializing ProtocolHandler" /opt/tomcat/logs/*
/opt/tomcat/logs/catalina.2015-02-23.log:23-Feb-2015 15:20:00.627 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"]
/opt/tomcat/logs/catalina.2015-02-23.log:23-Feb-2015 15:20:00.665 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["ajp-nio-8009"]
但是我的server.xml不包含任何告诉它使用NIO的内容,我的连接器如下所示:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
换句话说,我没有将协议设置为使用org.apache.coyote.http11.Http11NioProtocol,如上文所述 .
服务器似乎还在使用NIO怎么样?
-
附加信息
-
Tomcat版本:8.0.15.0
-
JVM版本:1.8.0_25-b17
-
正在使用Spring MVC .
Thx提前
1 回答
NIO是Tomcat 8的默认HTTP和AJP连接器实现 .
http://tomcat.apache.org/migration-8.html#Default_connector_implementation