Tomcat之BIO/NIO/APR的三大模式
来源:互联网 发布:淘宝客营销和定向计划 编辑:程序博客网 时间:2024/05/17 01:45
1.BIO
(1)BIO是最稳定最老的一个连接器,是采用阻塞的方式,意味着每个连接线程绑定到每个Http请求,直到获得Http响应返回,如果Http客户端请求的是keep-Alive连接,那么这些连接也许一直保持着直至达到timeout时间,这期间不能用于其它请求。性能差但是最稳定。
3.APR
(1)BIO是最稳定最老的一个连接器,是采用阻塞的方式,意味着每个连接线程绑定到每个Http请求,直到获得Http响应返回,如果Http客户端请求的是keep-Alive连接,那么这些连接也许一直保持着直至达到timeout时间,这期间不能用于其它请求。性能差但是最稳定。
(2)使用方式:直接就是出厂默认:注意协议是什么。
2.NIO
(1)NIO是使用Java的异步IO技术,不产生阻塞。
(2)使用方式:直接修改server.xml里的Connector节点,修改protocol为 :
protocol="org.apache.coyote.http11.Http11NioProtocol"
3.APR
(1)APR是使用原生C语言编写的非堵塞I/O,利用了操作系统的网络连接功能,速度很快,但是需先安装apr和native,若直接启动就支持apr,能大幅度提升性能,不亚于魔兽开局爆高科技兵种,威力强大。
(2)使用方式:protocol=" org.apache.coyote.http11.Http11AprProtocol "
(3)配置
①下载:http://apr.apache.org/download.cgi
②安装apr
[1] 在目录/opt/apr/apr-1.5.2 下执行 :“./configure --prefix=/usr/local/apr”。
[2] make
[3] make install
③安装apr-iconv
[1] 在目录/opt/apr/apr-iconv-1.2.1下执行 :“./configure --prefix=/usr/local/apr-iconv --with- apr=/usr/local/apr”。
[2] make
[3] make install
④安装apr-util
[1]在目录/opt/apr/apr-util-1.5.4下执行 : “./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr --with-apr-iconv=/usr/local/apr-iconv/bin/apriconv ”。
[2]make
[3]make install
⑤安装tomcat-native
[1]tar -zxvf tomcat-native.tar.gz
[2]在tomcat-native-1.1.33-src/jni/native/目录下执行:“./configure --with-apr=/usr/local/apr”。
[3] make
[4] make install
⑥设置apr的环境变量: vim /opt/tomcat7/bin/catalina.sh
编辑添加如下内容:"LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr/lib export LD_LIBRARY_PATH",保存退出。
⑦重启tomcat查看日志
⑧粘贴便签内配置,也就是之前Tomact并发优化的servlet.xml文件复杂版内容。
<Connector port="8080"protocol="org.apache.coyote.http11.Http11AprProtocol"
URIEncoding="UTF-8"
maxConnections="10000"
maxThreads="2000"
acceptCount="2000"
minSpareThreads="100"
compression="on"
compressionMinSize="2048"
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"
enableLookups="false"
disableUploadTimeout="true"
connectionTimeout="20000"
redirectPort="8443" />
⑨登录Tomcat后台查看整体性能:http://localhost:8080/manager/status
4.测试:ab -n1000 -c100 http://localhost:8080/
说明:具体测试方法和测试内容请看:http://blog.csdn.net/luomingkui1109/article/details/72821990
阅读全文
1 0
- Tomcat之BIO/NIO/APR的三大模式
- tomcat的三种模式(bio、nio、apr)
- Tomcat Connector的三种运行模式【bio、nio、apr】
- Tomcat Connector的三种运行模式【bio、nio、apr】
- Tomcat三种运行模式(BIO, NIO, APR)
- Tomcat三种运行模式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 Connector三种运行模式(BIO, NIO, APR)的比较和优化
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式
- 统战gxtyzx环境问题解决
- Android仿ios风格底部弹框
- Python+Selenium定位不到元素常见原因及解决办法(报:NoSuchElementException)
- C#系统预定义委托类型Action,Func
- 选择客栈
- Tomcat之BIO/NIO/APR的三大模式
- ES6 初步学习
- JavaScript/jQuery选择器
- xcode 打包 ionic
- Android查询扫描SD卡里指定后缀名称的文件
- 在一个页面同时引入两个百度地图
- 通过JS获取前台数据,并向后台一般处理程序传递
- 理解GCD死锁
- PartitioinLeaderSelector分析