1.连接器等同于nginx中的引擎。

2.tomcat连接器有三种运行模式bio、nio、apr 。

(1)bio(blocking I/O,阻塞式I/O操作) 

1)表示tomcat使用的是传统的java I/O操作(即java.io包及其子包)。

2)一个线程处理一个请求。

3)缺点:并发量高时,线程数较多,浪费资源。

4)tomcat7或以下版本,在Linux系统中默认使用这种方式。

5)性能最差,没有经过任何优化处理和支持。 

(2)nio(non-blocking I/O)

1)java SE 1.4及后续版本提供的一种新的I/O操作方式(即java.nio包及其子包)。

2)java nio 是一个基于缓冲区、并能提供非阻塞I/O操作的java API。

3)拥有比传统I/O操作更好的并发运行性能。

4)利用java的异步IO处理,可以通过少量的线程处理大量的请求。

5)tomcat8在linux系统中默认使用这种方式。 

(3)apr(apache Portable Runtime /Nginx可移植运行时库)

 1)tomcat将以JNI的形式调用apache http服务器的核心动态链接库来处理文件读取或网络传输操作。

 2)大大提到tomcat对静态文件的处理性能。

 3)从操作系统级别来解决异步的IO问题,大幅度提高性能。

 4)tomcat apr也是tomcat上运行高并发应用的首选模式。

3.调整为nio模式,需修改配置文件 server.xml

修改以下内容

    <Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
/>

修改为

    <Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"
connectionTimeout="20000"
/>

4.调整为apr模式

(1)安装apr和native

 yum -y install apr apr-devel

 cd /usr/local/tomcat/bin/
tar xzvf tomcat-native.tar.gz
cd tomcat-native-1.1.-src/native/
./configure --with-apr=/usr/bin/apr--config
make && make install

(2)设置环境变量

  1)第一种方式:在bin/catalina.sh中增加以下配置

增加以下内容

  2)第二种方式:在/etc/profile中添加以下内容

exprot CATALINA_OPTS=-Djava.library.path=/usr/local/apr/lib

source /etc/profile

(3)修改配置文件

  1)修改以下内容

<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"

  2)修改为

  <Connector port="8080" protocol="org.apache.coyote.http11.Http11AprProtocol"
connectionTimeout="20000"

Tomcat连接器详解的更多相关文章

  1. TOMCAT原理详解及请求过程(转载)

    转自https://www.cnblogs.com/hggen/p/6264475.html TOMCAT原理详解及请求过程 Tomcat: Tomcat是一个JSP/Servlet容器.其作为Ser ...

  2. tomcat配置文件详解

    Tomcat系列之服务器的安装与配置以及各组件详解   tomcat 配置文件详解

  3. tomcat 日志详解

    1 tomcat  日志详解 1.1  tomcat 日志配置文件 tomcat 对应日志的配置文件:tomcat目录下的/conf/logging.properties. tomcat 的日志等级有 ...

  4. [svc]tomcat配置文件详解

    Tomcat系列之服务器的安装与配置以及各组件详解 tomcat 配置文件详解 tomcat安全管理规范

  5. tomcat日志详解

    1 tomcat 日志详解 1.1 tomcat 日志配置文件 tomcat 对应日志的配置文件:tomcat目录下的/conf/logging.properties. tomcat 的日志等级有:日 ...

  6. Tomcat使用详解

    Tomcat简介 官网:http://tomcat.apache.org/ Tomcat GitHub 地址:https://github.com/apache/tomcat Tomcat是Apach ...

  7. tomcat使用详解(week4_day2)--技术流ken

    tomcat简介 Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache.Sun和其他一些公司及个人共同开发 ...

  8. Tomcat——Tomcat使用详解

    Tomcat简介 官网:http://tomcat.apache.org/ Tomcat GitHub 地址:https://github.com/apache/tomcat Tomcat是Apach ...

  9. [svc]tomcat配置文件详解-最简单的基于mvn的war包

    tomcat安全管理规范 java&tomcat配置参考(多看看这位大牛的博客,写的很好) Tomcat系列之Java技术详解 http://blog.51cto.com/freeloda/1 ...

随机推荐

  1. Pandas 筛选操作

    # 导入相关库 import numpy as np import pandas as pd 在数据处理过程中,经常会遇到要筛选不同要求的数据.通过 Pandas 可以轻松时间,这一篇我们来看下如何使 ...

  2. noip11 string

    这道题改题时我打了个玄学复杂度的暴力,然后我成功的造了一组数据hack掉了自己的代码.... 通过观察,我们可以很容易的发现在操作几次后,整个序列就会变成一块一块相同的字母. 于是我们可以对我们的暴力 ...

  3. jmeter-手机号验证注册登录

    1.测试计划->线程组 2.首先获取需要注册的手机号,获取手机号的方式如下 (1)使用配置元件导入需要注册的手机 ·右键线程组-->配置元件-->CSV数据文件设置,如图: (2)使 ...

  4. NOIP模拟测试14

    考完19了再写14,我也是够咕的. 14的题很好,也充分暴露了我的问题. T1是个分析性质推结论的题 对于区间[L,R],不妨设a[L]!=a[R],那么两个端点对答案没有贡献,也就是[L+1,R], ...

  5. Project Euler 56: Powerful digit sum

    一个古戈尔也就是\(10^{100}\)是一个天文数字,一后面跟着一百个零.\(100^{100}\)更是难以想像的大,一后面跟着两百个零.但是尽管这个数字很大,它们各位数字的和却只等于一.考虑两个自 ...

  6. 在linux用ueditor遇到的问题

    在使用ueditor时,遇到很多问题.最大问题是就是服务器返回出错 最让人头疼的是preview没有任何信息.之前也找过很多的资料,很多资料都没有提到修改controller.php文件中error_ ...

  7. liunx查看日志 | 最实用命令和方法

    1.业务系统访问量不是很大的时候,使用这个,有bug的地方操作下,直接看最后操作的日志 tail  -fn100  catalina.log   查询日志尾部最后100行的日志,并且随文件;   2. ...

  8. jquery 数字滚动方法

    jquery 数字滚动方法用的是countUp.js这个插件 target = 目标元素的 ID:startVal = 开始值:endVal = 结束值:decimals = 小数位数,默认值是0:d ...

  9. 反射与泛型--使用泛型反射API打印出给定类的所有内容

    package chapter8Demos; import java.lang.reflect.*; import java.util.Arrays; import java.util.Scanner ...

  10. Laravel框架安装RabbitMQ消息中间件步骤

    Laravel5.6 整合 RabbitMQ 消息队列 简介: Laravel 队列为不同的后台队列服务提供了统一的 API,例如 Beanstalk,Amazon SQS,Redis,甚至其他基于关 ...