`
85977328
  • 浏览: 1870815 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

tomcat7.0.27的bio,nio.apr高级运行模式

阅读更多
一 前言
    tomcat的运行模式有3种.修改他们的运行模式.3种模式的运行是否成功,可以看他的启动控制台,或者启动日志.或者登录他们的默认页面http://localhost:8080/查看其中的服务器状态。

二 bio
默认的模式 blocking IO,性能非常低下,没有经过任何优化处理和支持.

三 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" />
启动后,就可以生效。性能得到初步优化但与apr相比,还是有一些差距。

四 apr
安装起来最困难,但是从操作系统级别来解决异步的IO问题,大幅度的提高性能.
必须要安装apr和native,直接启动就支持apr。
下面的修改纯属多余,仅供大家扩充知识,但仍然需要安装apr和native
如nio修改模式,修改protocol为org.apache.coyote.http11.Http11AprProtocol

五 补充
1)安装APR的方法,请看我另一篇博客http://phl.iteye.com/blog/910984;
2)关于性能数据请读者们自行研究,笔者不是在写教科书在此只是给出思路,性能研究是个很深的领域,请各位按需自行搭建环境测试;
3)总的来说,bio是不推荐使用的,apr的模式推荐;

item protocol Requests per second
BIO org.apache.coyote.http11.Http11Protocol 916.06 [#/sec] (mean)
NIO org.apache.coyote.http11.Http11NioProtocol 2102.26 [#/sec] (mean)
APR org.apache.coyote.http11.Http11AprProtocol 1997.24 [#/sec] (mean)


作者简介
昵称:澳洲鸟
姓名:朴海林
QQ:85977328
MSN:6301655@163.com

转载请注明出处
分享到:
评论
12 楼 _mjhx 2013-09-16  
APR模式的并发少于NIO? 五(3)有疑问,再说整体并发量没这么高吧
11 楼 wdz567 2011-02-22  
看下 学习下!不过没有数据验证。
10 楼 1927105 2011-02-22  
恩,lz应该试试
9 楼 毕竟红尘 2011-02-22  
说明在情景下用哪种方式,会更有意义一些。
不然,大家就都去用apr去了~~~
8 楼 raojl 2011-02-22  
第三种还是简单的。
7 楼 wenshao 2011-02-21  
明白了,楼主只是在YY!
6 楼 85977328 2011-02-21  
只要做过通信的,都应该知道BIO的弊端
现在基本很少用
5 楼 85977328 2011-02-21  
数据可以自己做实验啊~,~
不好意思,对不住大家
我这也只是记个笔记,给自己做技术备份,不过数据网上到处都是
如果过几天我有时间,我会把实验后的数据发布出来
4 楼 diggywang 2011-02-21  
居然没有误导帖!
3 楼 fight_bird 2011-02-21  
7.0需要手工安装apr?

6.0.24开始即自动加载,效率提升是肯定的,但启动速度降低,所以,开发阶段不要启动apr,项目上线后再启动。
2 楼 wenshao 2011-02-21  
只有结论,没有任何测试数据证明,楼主只是纯粹的YY?
1 楼 myreligion 2011-02-21  
无数据,无真相。

相关推荐

Global site tag (gtag.js) - Google Analytics