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. redhat安装xwindow环境

    . yum groupinstall "X Window System" . yum groupinstall "GNOME Desktop Environment&qu ...

  2. 21个ui设计技巧,让你的设计不落伍

    1.功能性极简主义 不少移动端APP和网站开始基于极简主义设计风来设计,而极简主义本身并非关注所有的信息,而是通过减少非关键信息来突出特定的内容,它是有着极强的功能性和偏向的.它有着如下的特征: ・简 ...

  3. window安装设置

    https://jingyan.baidu.com/article/73c3ce28ed7d92e50243d96c.html

  4. 移动端web及app设计尺寸

    转载 2017年07月27日 22:48:16 984 移动端高清.多屏适配方案 背景 开发移动端H5页面 面对不同分辨率的手机 面对不同屏幕尺寸的手机 视觉稿 在前端开发之前,视觉MM会给我们一个p ...

  5. springmvc 返回汉字乱码

    1.删除配置文件中的<mvc:annotation-driven  /> 2.添加如下配置 <bean class="org.springframework.web.ser ...

  6. spring-data-jpa+hibernate 各种缓存的配置演示

    本文所有测试用代码在https://github.com/wwlleo0730/restjplat 的分支addDB上 目前在使用spring-data-jpa和hibernate4的时候,对于缓存关 ...

  7. 2018.09.30 bzoj2821: 作诗(Poetize)(分块)

    传送门 分块经典题目. 先将数列分块. 然后预处理出每两个块之间有多少个数出现了正偶数次. 这样查询的时候对于中间的完整块直接用预处理出的数组搞定. 剩下的暴力枚举求解. 代码: #include&l ...

  8. json&pickle

    用于序列化的两个模块 json,用于字符串 和 python数据类型间进行转换pickle,用于python特有的类型 和 python的数据类型间进行转换Json模块提供了四个功能:dumps.du ...

  9. 简单的Java,Python,C,C++

    Java 语言 //package main //注意不要添加包名称,否则会报错. import java.io.*; import java.util.*; cin.hasNext(); cin.h ...

  10. Spring3.x错误----Bean named "txAdvice" must be of type[org.aopallibance.aop.Advice

    Spring3.x错误: 解决方法: aopalliance-1.0.jar 和 aopalliance-alpha1.jar之间的冲突.