Tomcat连接器详解
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连接器详解的更多相关文章
- TOMCAT原理详解及请求过程(转载)
转自https://www.cnblogs.com/hggen/p/6264475.html TOMCAT原理详解及请求过程 Tomcat: Tomcat是一个JSP/Servlet容器.其作为Ser ...
- tomcat配置文件详解
Tomcat系列之服务器的安装与配置以及各组件详解 tomcat 配置文件详解
- tomcat 日志详解
1 tomcat 日志详解 1.1 tomcat 日志配置文件 tomcat 对应日志的配置文件:tomcat目录下的/conf/logging.properties. tomcat 的日志等级有 ...
- [svc]tomcat配置文件详解
Tomcat系列之服务器的安装与配置以及各组件详解 tomcat 配置文件详解 tomcat安全管理规范
- tomcat日志详解
1 tomcat 日志详解 1.1 tomcat 日志配置文件 tomcat 对应日志的配置文件:tomcat目录下的/conf/logging.properties. tomcat 的日志等级有:日 ...
- Tomcat使用详解
Tomcat简介 官网:http://tomcat.apache.org/ Tomcat GitHub 地址:https://github.com/apache/tomcat Tomcat是Apach ...
- tomcat使用详解(week4_day2)--技术流ken
tomcat简介 Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache.Sun和其他一些公司及个人共同开发 ...
- Tomcat——Tomcat使用详解
Tomcat简介 官网:http://tomcat.apache.org/ Tomcat GitHub 地址:https://github.com/apache/tomcat Tomcat是Apach ...
- [svc]tomcat配置文件详解-最简单的基于mvn的war包
tomcat安全管理规范 java&tomcat配置参考(多看看这位大牛的博客,写的很好) Tomcat系列之Java技术详解 http://blog.51cto.com/freeloda/1 ...
随机推荐
- 详细梳理ajax跨域4种解决方案
前言 自动接触前端,跨域这个词就一直萦绕在耳畔.因为一般接手的项目都已经做好了这方面的处理,而且之前一直感觉对这方面模棱两可,所以今天就抽个时间梳理一下. 为什么需要跨域 跨域这个概念来自一个叫 &q ...
- jq实现监听滚动条导致导航栏变色
1效果图 2 html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> & ...
- [LINQ2Dapper]最完整Dapper To Linq框架(一)---基础查询
此例子是使用LINQ2Dapper封装,效率优于EntityFramwork,并且支持.NetFramework和.NetCore框架,只依赖于Dapper 支持.net framework4.5.1 ...
- PHP根据ip获取地理位置(通过高德地图接口)
PHP根据ip获取地理位置(通过高德地图接口)<pre>//restapi.amap.com/v3/ip?key=2004f145cf3a39a72e9ca70ca4b2a1dc& ...
- 我们碰到了大麻烦,一个新来的传教士惹恼了上帝,上帝很愤怒,要求我们把圣经(bbe.txt)背熟,直至他说哪个单词,我们就要飞快的回答出这个单词在第几行第几个单词位置。听说你是个优秀的程序员,那么髟助我们完成这个不可能的任务吧
编程任务:1.我们碰到了大麻烦,一个新来的传教士惹恼了上帝,上帝很愤怒,要求我们把圣经(bbe.txt)背熟,直至他说哪个单词,我们就要飞快的回答出这个单词在第几行第几个单词位置.听说你是个优秀的程序 ...
- WordPress代码高亮插件SyntaxHighlighter终极使用详解
子曰: 工欲善其事,必先利其器.作为码农一枚,再加上站长这个已经不再光鲜的称呼,岂能没有一款经济实用.操作简单.而且功能必须强大.样式也必须好看的Wordpress代码高亮插件?!作为一个视代码如生命 ...
- 6. SOFAJRaft源码分析— 透过RheaKV看线性一致性读
开篇 其实这篇文章我本来想在讲完选举的时候就开始讲线性一致性读的,但是感觉直接讲没头没尾的看起来比比较困难,所以就有了RheaKV的系列,这是RheaKV,终于可以讲一下SOFAJRaft的线性一致性 ...
- 浅析ORACLE中NVL/NVL2/DECODE/CASE WHEN的用法
使用NVL的时候只能对值进行是否为空的判断,基本语法是NVL( 值1, ,结果2).它的功能是如果值1为空,则此函数返回结果2,不为空的话直接输出值1(如果两个参数都为空,那么还是返回空): NVL2 ...
- lqb 基础练习 十六进制转十进制
基础练习 十六进制转十进制 时间限制:1.0s 内存限制:512.0MB 问题描述 从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出. 注:十六进制数中的10~ ...
- 领扣(LeetCode)删除排序数组中的重复项 个人题解
给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度. 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成. 示例 1 ...