Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式
来源:互联网 发布:网络变压器内部结构 编辑:程序博客网 时间:2024/04/26 08:40
Tomcat的运行模式有3种.修改他们的运行模式.3种模式的运行是否成功,可以看他的启动控制台,或者启动日志.或者登录他们的默认页面http://localhost:8080/查看其中的服务器状态。
1)bio
默认的模式,性能非常低下,没有经过任何优化处理和支持.
2)nio
利用java的异步io护理技术,no blocking IO技术.
想运行在该模式下,直接修改server.xml里的Connector节点,修改protocol为
<Connector port="80" protocol="org.apache.coyote.http11.Http11NioProtocol" connectionTimeout="20000" URIEncoding="UTF-8" useBodyEncodingForURI="true" enableLookups="false" redirectPort="8443" />
启动后,就可以生效。
3)apr
安装起来最困难,但是从操作系统级别来解决异步的IO问题,大幅度的提高性能.
必须要安装apr和native,直接启动就支持apr。下面的修改纯属多余,仅供大家扩充知识,但仍然需要安装apr和native
如nio修改模式,修改protocol为org.apache.coyote.http11.Http11AprProtocol
来源: <http://www.oschina.net/question/54100_16195>
Tomcat的四种基于HTTP协议的Connector性能比较<Connector port="8081" protocol="org.apache.coyote.http11.Http11NioProtocol" connectionTimeout="20000" redirectPort="8443"/>
<Connector port="8081" protocol="HTTP/1.1" connectionTimeout="20000"
redirectPort="8443"/>
<Connector executor="tomcatThreadPool"
port="8081" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Connector executor="tomcatThreadPool"
port="8081" protocol="org.apache.coyote.http11.Http11NioProtocol"
connectionTimeout="20000"
redirectPort="8443" />
- maxSpareThreads="750" maxThreads="1000"
- minSpareTHreads="50" acceptCount="1000" maxProcessors="1000"
connectionTimeout="60000" redirectPort="8443" maxThreads="5000" acceptCount="500" minSpareThreads="100" maxSpareThreads="5000" enableLookups="false" compression="on" compressionMinSize="2048" compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"
<Executor name="tomcatThreadPool" namePrefix="tomcatThreadPool-" maxThreads="1000" maxIdleTime="300000"
minSpareThreads="200"/>
netstat -na | grep ESTAB | grep 8040 | wc -l
我们姑且把上面四种Connector按照顺序命名为 NIO, HTTP, POOL, NIOP为了不让其他因素影响测试结果,我们只对一个很简单的jsp页面进行测试,这个页面仅仅是输出一个Hello World。假设地址是 http://tomcat1/test.jsp
我们依次对四种Connector进行测试,测试的客户端在另外一台机器上用ab命令来完成,测试命令为: ab -c 900 -n 2000 http://tomcat1/test.jsp ,最终的测试结果如下表所示(单位:平均每秒处理的请求数):
NIO HTTP POOL NIOP
281 65 208 365
666 66 110 398
692 65 66 263
256 63 94 459
440 67 145 363
由这五组数据不难看出,HTTP的性能是很稳定,但是也是最差的,而这种方式就是Tomcat的默认配置。NIO方式波动很大,但没有低于280 的,NIOP是在NIO的基础上加入线程池,可能是程序处理更复杂了,因此性能不见得比NIO强;而POOL方式则波动很大,测试期间和HTTP方式一样,不时有停滞。
由于linux的内核默认限制了最大打开文件数目是1024,因此此次并发数控制在900。
尽管这一个结果在实际的网站中因为各方面因素导致,可能差别没这么大,例如受限于数据库的性能等等的问题。但对我们在部署网站应用时还是具有参考价值的。jpr, ajp, http11 and memory connector protocol
0 0
- Tomcat Connector的三种运行模式【bio、nio、apr】
- Tomcat Connector的三种运行模式【bio、nio、apr】
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式【转】
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式(未完善)
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式
- Tomcat 的三种(bio、nio、apr) 高级 Connector 运行模式
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式
- JMockit
- Arch Linux 环境下使用 Tomcat 6 搭建多站点、带SSL证书、高性能NIO/APR网站的配置详解
- packageinstaller之权限获取及展现
- Tomcat connector元素常用配置(最大连接数等)
- Apache负载均衡+Tomcat集群
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式
- 错误:No resource found that matches the given name 'Theme.AppCompat.Light'解决方法
- 链表就地逆置
- git理解和使用
- Tomcat中的Connector配备
- Tomcat处理HTTP请求:Connector源码
- gevent wsgi 部署bottle配置实例
- ACE_Reactor(六)ACE_TP_Reactor
- Android 项目实践(四)——服务器搭建