Tomcat支持三种接收请求的处理方式:BIO、NIO、ARP。

BIO模式:阻塞式I/O操作,表示Tomcat使用传统Java I/O操作。默认情况下,Tomcat7以下版本使用BIO模式运行,由于每个请求都要创建一个线程来处理,线程开销较大,不能处理高并发的场景,在三种模式中性能最低。如下:

NIO模式:是Java SE 1.4及后续版本提供的一种新I/O操作方式。是一个基于缓冲区,并能够提供非阻塞I/O操作的JAVA API,它拥有比传统I/O操作(BIO模式)更好的并发运行性能。在Tomcat7中启用NIO模式,需要server.xml配置文件支持。

protocol="org.apache.coyote.http11.Http11NioProtocol"

在Tomcat 8以上版本,默认就是使用NIO模式,不需要做额外的修改。

APR模式:简单的理解就是从操作级别解决异步IO问题,大幅度的提高服务器的性能和响应性能,也是Tomcat运行高并发应用的首选模式。从Tomcat 7.0.30开始,Tomcat默认支持apr。在这,主要说明APR模式的开启。

  1. 环境说明

    系统:     CentOS 6.5 x64

    JDK版本:      JDK 1.7.0_79

    Tomcat版本:        7.0.67

  2. 安装步骤

    2.1 安装APR

      # tar zxf apr-1.5.2.tar.gz

      # cd apr-1.5.2

      # ./configure --prefix=/usr/local/apr

      # make && make install

    2.2 安装APR-UTILS

      # tar zxf apr-util-1.5.4.tar.gz

      # cd apr-util-1.5.4

      # ./configure --with-apr=/usr/local/apr

      # make && make install

    2.3   安装tomcat-native

      # tar zxf tomcat-native-1.1.34-src.tar.gz

      # cd tomcat-native-1.1.34-src/jni/native/

      # ./configure --with-apr=/usr/local/apr --with-java-home=/usr/local/java/jdk1.7.0_79/

      # make && make install

      修改环境变量:

      export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr/lib

      export LD_RUN_PATH=$LD_RUN_PATH:/usr/local/apr/lib

    2.4  验证结果

      

TOMCAT开启APR模式的更多相关文章

  1. SpringBoot内嵌Tomcat开启APR模式(运行环境为Centos7)

    网上查到的一些springboot内嵌的tomcat开启apr的文章,好像使用的springboot版本较老,在SpringBoot 2.0.4.RELEASE中已经行不通了.自己整理了一下,供参考. ...

  2. CentOS7下配置Tomcat以APR模式+Tomcat Native运行

    在慢速网络上Tomcat线程数开到300以上的水平,不配APR,基本上300个线程狠快就会用满,以后的请求就只好等待.但是配上APR之后,Tomcat将以JNI的形式调用Apache HTTP服务器的 ...

  3. tomcat8开启APR模式

    1 Apr模式介绍 Tomcat可以使用APR来提供超强的可伸缩性和性能,更好地集成本地服务器技术.APR(Apache Portable Runtime)是一个高可移植库,它是Apache HTTP ...

  4. 开启tomcat的apr模式,并利用redis做tomcat7的session的共享。

    更新系统组件 yum -y install readline* xmlto kernel-devel yum* screen vim* psmisc wget lrzsz pcre-devel lib ...

  5. Windows环境Tomcat开启APR并配置http/2.0访问

    1.http/2.0需要开启https 参考:https://www.cnblogs.com/zhi-leaf/p/11978615.html 2.下载tcnative-1.dll文件 官网下载地址: ...

  6. Tomcat开启Debug模式

    在bin/catalina.sh中添加如下行,将tomcat重启即可. 注:以下标红的7002需将其改成对象的tomcat端口即可! JAVA_OPTS=,server=y,suspend=n -Df ...

  7. 十、cent OS开启APR模式报错:configure: error: Found APR 1.3.9. You need version 1.4.3 or newer installed

    错误内容显示APR的版本过低,需要新版本 到http://apr.apache.org/download.cgi#apr1这个地址下载所需要的包apr-1.4.5.tar.gz apr-iconv-1 ...

  8. Spring Boot切换为APR模式

    Spring Boot内置了tomcat容器,直接运行Application就可以启动web服务器. 在tomcat中提供了三种方式:BIO.NIO.APR. BIO tomcat7以下的版本都是BI ...

  9. springboot使用tomcat apr模式

    因需项目对并发要求比较高.提高Tomcat效率.使用tomcat apr模式.今天在这记录下使用过程.apr全称为apache portable runtime.这里套用下wiki对apr的解释. T ...

随机推荐

  1. How to use jQuery countdown plugin

    Install We provide two installation methods: Bower bower install jquery.countdown Manual Download th ...

  2. 【UML】UML类图关系(泛化 、继承、实现、依赖、关联、聚合、组合)

    http://www.cnblogs.com/olvo/archive/2012/05/03/2481014.html 继承.实现.依赖.关联.聚合.组合的联系与区别 分别介绍这几种关系: 继承 指的 ...

  3. 5. Import the project download from Git

    1.Recover eclipse project Copy .project from other project(You can new a project first in eclipse. T ...

  4. 给Array添加去重原型方法

    Array.prototype.unique = function(){ var newArray = []; var oldArray = this; if(oldArray.length<= ...

  5. linux(rhel) rescue修复详解

    修复linux,先准备好一张安装光盘,光驱安装好后开机,选择从光驱启动.等待安装盘显示操作界面时选择"rescue"选项,如果有光标提示的话,也可以输入:linux rescue进 ...

  6. 【转载】foreach+Control.Controls无法一次性移除所有子控件解决方法

    博客转载地址:http://www.mzwu.com/article.asp?id=2254 //在panel1中添加20个Button ; ; ; i <= ; i++) { ) row++; ...

  7. S4 exercise -- 模块

    写一个用户登录验证程序,文件如下1234.json {"expire_date": "2021-01-01", "id": 1234, &q ...

  8. js获取年月日时分秒星期

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. (匹配 二维建图) Antenna Placement --POJ --3020

    链接: http://poj.org/problem?id=3020 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=82834#probl ...

  10. [leetcode] 15. Plus One

    这道题其实让我意识到了我的英文水平还有待加强.... 题目如下: Given a non-negative number represented as an array of digits, plus ...