tomcat io 与 nio性能比较

tomcat连接器(conncector)可以配置成NIO方式
今天没事对IO和NIO分别做了下测试
配置如下:
<Connector port="8080" protocol="HTTP/1.1" 
connectionTimeout="20000"
redirectPort="8443"
executor="tomcatThreadPool" />

<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol" 
connectionTimeout="20000"
redirectPort="8443" />


主要测试两类资源:
动态页面(带数据库查询,偏重IO和cpu)
静态页面(无数据库操作,主要考察处理简单请求的能力)

结果如下:
动态页面
并发数 100 200 300 400 600 800
IO 206 215 209 205 210 206
NIO 192 194 189 194 195 191


静态页面
并发数 100 200 300 400 600 800
IO 941 306 361 361 347 400
NIO 927 313 318 703 286 914


[b]可以看出在处理动态资源时NIO的优势并不明显甚至还不如IO,其主要原因是动态资源,是IO和cpu密集型操作,导致很多请求都阻塞在CPU和IO上,所以socket IO只能干等着,发挥不出NIO的优势

再看处理静态时NIO的表现,虽然不稳定但性能的提升还是很明显的,所以NIO常常用来处理请求多并且处理起来比较简单的应用中,如memcached[/b]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值