Tomcat8开启APR运行模式(centos6.5)
2016-04-16 16:23
519 查看
Tomcat有三种运营模式:bio、nio、apr,不同模式下Tomcat的运行效率差别比较大。
如果要在Tomcat6开启NIO模式,直接修改server.xml里的Connector节点,修改protocol为
org.apache.coyote.http11.Http11NioProtocol,启动生效。
Tomcat8默认配置启动完后最后三行日志如下:
http-nio-8180
ajp-nio-8109
说明默认以nio模式运行。
必须要安装apr和native,直接启动就支持apr。
安装apr
apr需要APR库和OpenSSL相关库。
/opt/soft/tomcat_8180/bin
解压native源码包
我们需要把/usr/local/apr/lib/ libtcnative-1.so.0.1.32指向Tomcat可识别路径。
Tomcat8默认apr是开启的,配置在server.xml
把/usr/local/apr/lib/ libtcnative-1.so.0.1.32软链接到上面创建的目录。
重新启动Tomcat看到启动日志最后三行
http-apr-8180
ajp-apr-8109
一、bio(blockingIO)
阻塞式IO,Tomcat6及以前版本默认运行模式,性能非常低下,没有经过任何优化处理。二、nio(noblocking IO)
非阻塞式IO,Tomcat7以后的版本默认运行模式,利用java异步IO技术使Tomcat运行性能有所提升。<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8543" />
如果要在Tomcat6开启NIO模式,直接修改server.xml里的Connector节点,修改protocol为
org.apache.coyote.http11.Http11NioProtocol,启动生效。
<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol" connectionTimeout="20000" redirectPort="8543" />
Tomcat8默认配置启动完后最后三行日志如下:
http-nio-8180
ajp-nio-8109
说明默认以nio模式运行。
三、apr(Apache Portable Runtime)
从操作系统级别来解决异步的IO问题,大幅度的提高性能。必须要安装apr和native,直接启动就支持apr。
安装apr
apr需要APR库和OpenSSL相关库。yum install apr-devel openssl-devel
安装native
进入Tomcat的bin目录,比如:/opt/soft/tomcat_8180/bin
解压native源码包
tar -zxvf tomcat-native.tar.gz cd tomcat-native-1.1.32-src/jni/native ./configure--with-apr=/usr/bin/apr-1-config--with-java-home="/opt/soft/jdk1.8.0_60" --with-ssl=yes make make installnative 会被安装到/usr/local/apr/lib
我们需要把/usr/local/apr/lib/ libtcnative-1.so.0.1.32指向Tomcat可识别路径。
配置apr包到Tomcat可识别的路径
15-Apr-2016 22:18:54.209 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
Tomcat8默认apr是开启的,配置在server.xml
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />是由于操作系统未安装apr或者apr路径未指到Tomcat默认可识别的路径,则apr模式无法启动,自动切换启动nio模式。
cd /usr mkdir java cd java/ mkdir packages cd packages/ mkdir lib cd lib/ mkdir amd64 cd amd64/
把/usr/local/apr/lib/ libtcnative-1.so.0.1.32软链接到上面创建的目录。
ln -s /usr/local/apr/lib/libtcnative-1.so.0.1.32 libtcnative-1.so ln -s /usr/local/apr/lib/libtcnative-1.so.0.1.32 libtcnative-1.so.0
重新启动Tomcat看到启动日志最后三行
http-apr-8180
ajp-apr-8109
相关文章推荐
- java-模拟tomcat服务器
- i-jetty环境搭配与编译
- 实现单Tomcat多Server配置
- 生产环境下的Tomcat配置
- spymemcached源码中Reactor模式分析
- Linux部署Tomcat服务器
- jenkins------结合maven将svn项目自动部署到tomcat下
- 如何搞定tomcat这只喵~
- Java IO与NIO的一些文件拷贝测试
- MySQL 优化
- Google排名优化的几个影响因素
- 选定虚拟主机 性能凸显优势
- DB2优化(简易版)
- 修改一行代码提升 Postgres 性能 100 倍
- Mysql limit 优化,百万至千万级快速分页 复合索引的引用并应用于轻量级框架
- C#中尾递归的使用、优化及编译器优化
- 对优化Ruby on Rails性能的一些办法的探究
- 优化Ruby脚本效率实例分享
- redis的hGetAll函数的性能问题(记Redis那坑人的HGETALL)