Tomcat NIO配置

1. Tomcat NIO配置

今天在查看日志时发现tomcat的Socket连接方式为bio,于是我想既然有bio那肯定有nio。果然,一查就发现tomcat在6.0之后就可以配置nio的方式。nio方式比bio具有更好的并发性,如果Web应用需要更好的并发性能,当然是使用nio方式了。配置具体方法如下:

将Service.xml文件下的内容

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

connectionTimeout="20000"

redirectPort="8443" />

改为

<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"

connectionTimeout="20000"

redirectPort="8443" />

那么在启动tomcat时可以查看到tomcat已经以nio方式启动

同时为了获得更好的并发性还可以配置线程池

<Connector executor="tomcatThreadPool"

port="8080" protocol="HTTP/1.1"

connectionTimeout="20000"

redirectPort="8443" />

<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"

maxThreads="150" SSLEnabled="true" scheme="https" secure="true"

clientAuth="false" sslProtocol="TLS" />

2.Tomcat Connector(Tomcat连接器)有bio、nio、apr三种运行模式

bio

bio(blocking I/O,阻塞式I/O操作),表示Tomcat使用的是传统的Java I/O操作(即java.io包及其子包)。

默认的模式,性能最差,没有经过任何优化处理和支持。

nio

nio(non-blocking I/O),Java SE 1.4及后续版本提供的一种新的I/O操作方式(即java.nio包及其子包)。Java nio是一个基于缓冲区、并能提供非阻塞I/O操作的Java API。拥有比传统I/O操作(bio)更好的并发运行性能。

apr

apr(Apache Portable Runtime/Apache可移植运行时库),Tomcat将以JNI的形式调用Apache HTTP服务器的核心动态链接库来处理文件读取或网络传输操作,从而大大地提高Tomcat对静态文件的处理性能。从操作系统级别来解决异步的IO问题,大幅度的提高性能。 Tomcat apr也是在Tomcat上运行高并发应用的首选模式。

转载来源:https://www.cnblogs.com/lanqi/p/8631706.html

Tomcat BIO . NIO . ARP 配置相关推荐

  1. Apache Tomcat 7 Configuration BIO NIO AIO APR ThreadPool

    Apache Tomcat 7 Configuration Reference (7.0.93) - The Executor (thread pool) https://tomcat.apache. ...

  2. Windows下搭建Tomcat集群的配置详解

    < Windows下搭建Tomcat集群基础入门详解 > 前言 在搭建 < Apache + Tomcat 实现Web服务器集群 > 前我们还需要实现 Tomcat集群实现Se ...

  3. Tomcat之NIO和APR性能对比

    寄上一篇Tomcat的接收请求方式:BIO/NIO/APR继续 环境介绍 version:Apache Tomcat 8.5 操作系统:Mac OS X 10.14.5 JVM:1.8.0 测试数据场 ...

  4. Netty序章之BIO NIO AIO演变

    Netty序章之BIO NIO AIO演变 Netty是一个提供异步事件驱动的网络应用框架,用以快速开发高性能.高可靠的网络服务器和客户端程序.Netty简化了网络程序的开发,是很多框架和公司都在使用 ...

  5. Tomcat 8 安装和配置、优化

    2019独角兽企业重金招聘Python工程师标准>>> Tomcat 8 安装 Tomcat 8 安装 官网:http://tomcat.apache.org/ Tomcat 8 官 ...

  6. Tomcat 比 nio 、aio性能更好的apr介绍

    Tomcat 比 nio .aio性能更好的apr介绍 apr:这个玩意儿可以提高Tomcat对静态文件以及https的处理性能.(更多好处百度我也不懂) Tomcat的下载解压 Tomcat 下载 ...

  7. 什么是BIO | NIO | AIO

    在高性能的IO体系设计中,有几个名词概念常常会使我们感到迷惑不解.具体如下: 序号 问题 1 什么是同步? 2 什么是异步? 3 什么是阻塞? 4 什么是非阻塞? 5 什么是同步阻塞? 6 什么是同步 ...

  8. BIO NIO AIO 学习笔记

    BIO NIO AIO 1.同步阻塞的BIO 1.1 BIO介绍 1.2 BIO通信案例 2.同步非阻塞的NIO 2.1 NIO的介绍 2.2 NIO核心一Buffer缓冲区 2.3 NIO核心二Ch ...

  9. 关于BIO | NIO | AIO的讨论

    关于BIO | NIO | AIO的讨论一直存在,有时候也很容易让人混淆,就我的理解,给出一个解释: BIO | NIO | AIO,本身的描述都是在Java语言的基础上的.而描述IO,我们需要从两个 ...

最新文章

  1. LinkedHashMap源码剖析
  2. Apache ZooKeeper - ZK的内存数据 + 持久化事务日志 + 数据快照 初探
  3. 报名领奖|云栖大会,10月19-22日杭州不见不散!
  4. mysql.user表中Host为%的含义
  5. pycharm调试如何返回上一步_如何在瑞芯微RK3399开发板上调用底层接口技术调试笔记...
  6. 计算机控制技术在线,西交19春《计算机控制技术》在线作业【标准答案】
  7. 一个应用程序多线程误用的分析
  8. 哥尼斯堡的“七桥问题” (25 分)【欧拉回路模板题】
  9. Android之解决JsonObject里面的JsonArray数据会有斜杠问题
  10. [Hibernate]关于ID的一个容易混淆的地方
  11. Vue.js视频教程
  12. 红帽学习笔记[RHCSA] 第二课[文件、目录、相关命令]
  13. Qt —— 完美制作win系统扬声器、麦克风控制程序
  14. 2010年最怪异的25个面试问题,你能回答吗?
  15. Chrome开发者工具,如何清除Cookies
  16. Launcher壁纸来源
  17. 空间直线的最小二乘拟合
  18. 双网口以太网IO模块的优势
  19. java 打印标签_用Java打印到标签打印机
  20. 论文解读:Exploiting Cloze Questions for Few Shot Text Classification and Natural Language Inference

热门文章

  1. PHP生成唯一会员卡号
  2. mysql 格式化日期 DATE_FORMAT,FROM_UNIXTIME,UNIX_TIME等
  3. Centos7访问本地电脑共享文件夹遇到的问题
  4. shell的read方法使用介绍
  5. go语言一个包含nil指针的接口不是nil接口的理解
  6. 在编码中熟练使用JDK文档
  7. 小结-python连接redis的基本配置-解决远程连接问题
  8. django-自定义错误页面-404
  9. jquery-样式修改-位置的方法-标签的宽高数据
  10. linux指令:软连接与历史命令