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. 【Linux】【自学笔记】Linux下面docker安装mysql

    写在前面: 捣腾继续,之前把一个SpringBoot的程序安装在docker上面,参考链接:https://www.cnblogs.com/aki-stones/p/2019-11-01-note.h ...

  2. 博客文章编辑器 Cmd Markdown

    欢迎使用 Cmd Markdown 编辑阅读器 编辑器点击打开链接 学习语言地址点击打开链接

  3. 阿里巴巴开源项目: 基于mysql数据库binlog的增量订阅&消费

    背景 早期,阿里巴巴B2B公司因为存在杭州和美国双机房部署,存在跨机房同步的业务需求.不过早期的数据库同步业务,主要是基于trigger的方式获取增量变更,不过从2010年开始,阿里系公司开始逐步的尝 ...

  4. 我跟上家老板说过的最后一句话:转.NET Core吧

    最近几天浩子终于刚刚脱离了令人发指工作,一者是年底了,一者是不要向生活低头,就在这时我选择了第二者. 上家是做物联网的,人数不多,七八名开发人员,感觉都还可以,都很年轻没有秃顶,糊里糊涂就选择了入职. ...

  5. PHP、 Ruby、Python、Java、C++、C、Objective C——编程语言之禅

    PHP是你豆蔻年华时的心上人,她是情窦初开的你今年夏天傻乎乎追求的目标.玩一玩可以,但千万不要投入过深,因为这个“女孩”有严重的问题. Ruby是脚本家族中一个非常漂亮的孩子.第一眼看她,你的心魄就会 ...

  6. Vue躬行记(7)——渲染函数和JSX

    除了可通过模板创建HTML之外,Vue还提供了渲染函数和JSX,前者的编码自由度很高,后者对于开发过React的人来说会很熟悉.注意,Vue的模板最终都会被编译成渲染函数. 一.渲染函数 虽然在大部分 ...

  7. Project Euler 55: Lychrel numbers

    五十五.吕克雷尔数(Lychrel numbers) 如果我们把\(47\)翻转过来并和其自身相加,结果是\(47+74=121\)是一个回文数.并不是所有的数都可以这么快的变成回文数,比如说: \[ ...

  8. Nginx正则配置

    Nginx配置中Location的语法规则 location [ = | ~ | ~* | ^~ | !~ | !~* ] /uri/{ - } = 表示精确匹配 ~ 表示区分大小写正则匹配 ~* 表 ...

  9. HtmlSpanner 使用小结 -- 安卓解析html

    如何利用 HtmlSpanner解析 HTML格式 的字符串: 1. GitHub 下载HtmlSpanner项目 https://github.com/NightWhistler/HtmlSpann ...

  10. Ansible之系列命令详解

    ansible系列命令有:ansible.ansible-doc.ansible-playbook.ansible-vault.ansible-console.ansible-galaxy.ansib ...