tomcat的server.xml中,有两种Connector。
首先介绍一下这两种Connector的作用。
<!-- Define a non-SSL Coyote HTTP/1.1 Connector on port 8080 -->
<Connector port="8080"
maxThreads="150"
minSpareThreads="25"
maxSpareThreads="75"
enableLookups="false"
redirectPort="8443"
acceptCount="100"
debug="0"
connectionTimeout="20000"
disableUploadTimeout="true" />
<!-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 -->
<Connector port="8009"
enableLookups="false"
redirectPort="8443" debug="0"
protocol="AJP/1.3" />
第一个连接器监听8080端口,负责建立HTTP连接。在通过浏览器访问Tomcat服务器的Web应用时,使用的就是这个连接器。
第二个连接器监听8009端口,负责和其他的HTTP服务器建立连接。在把Tomcat与其他HTTP服务器集成时,就需要用到这个连接器。
转载:
http://blog.sina.com.cn/s/blog_5f5716580100lfav.html
下面说一下提高tomcat性能的NIO设置:
Tomcat的四种基于HTTP协议的Connector性能比较
<Connector port="8081" protocol="org.apache.coyote.http11.Http11NioProtocol"
connectionTimeout="20000" redirectPort="8443"/>
<Connector port="8081" protocol="HTTP/1.1" connectionTimeout="20000"
redirectPort="8443"/>
<Connector executor="tomcatThreadPool"
port="8081" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Connector executor="tomcatThreadPool"
port="8081" protocol="org.apache.coyote.http11.Http11NioProtocol"
connectionTimeout="20000"
redirectPort="8443" />
我们姑且把上面四种Connector按照顺序命名为 NIO, HTTP, POOL, NIOP
为了不让其他因素影响测试结果,我们只对一个很简单的jsp页面进行测试,这个页面仅仅是输出一个Hello World。假设地址是 http://tomcat1/test.jsp
我们依次对四种Connector进行测试,测试的客户端在另外一台机器上用ab命令来完成,测试命令为: ab -c 900 -n 2000 http://tomcat1/test.jsp ,最终的测试结果如下表所示(单位:平均每秒处理的请求数):
NIO HTTP POOL NIOP
281 65 208 365
666 66 110 398
692 65 66 263
256 63 94 459
440 67 145 363
由这五组数据不难看出,HTTP的性能是很稳定,但是也是最差的,而这种方式就是Tomcat的默认配置。NIO方式波动很大,但没有低于280 的,NIOP是在NIO的基础上加入线程池,可能是程序处理更复杂了,因此性能不见得比NIO强;而POOL方式则波动很大,测试期间和HTTP方式一样,不时有停滞。
由于linux的内核默认限制了最大打开文件数目是1024,因此此次并发数控制在900。
尽管这一个结果在实际的网站中因为各方面因素导致,可能差别没这么大,例如受限于数据库的性能等等的问题。但对我们在部署网站应用时还是具有参考价值的。
转载:
http://www.oschina.net/question/54100_16195
分享到:
相关推荐
### Tomcat服务参数配置详解 #### 一、Tomcat简介及安装 Tomcat是一款开源的Servlet容器,由Apache软件基金会下属的Jakarta项目开发。它实现了对Servlet和JavaServer Pages (JSP)技术的支持,并提供了作为Web...
本文将从面试专题中提取与Tomcat相关的知识点,涵盖Tomcat的端口修改、Connector运行模式、参数配置等方面。 一、Tomcat的缺省端口修改 Tomcat的缺省端口是8080,但可以根据需要修改为其他端口。修改步骤如下: 1...
1. **配置Connector**: 在`server.xml`文件中,我们主要关注`<Connector>`元素。对于高并发,可以增加`maxThreads`属性,这是Tomcat可以同时处理的最大线程数。例如,可以设置为`maxThreads="2000"`以应对1000 QPS的...
在这个“tomcat软件及配置方法”中,我们将深入探讨Tomcat的安装过程和基本配置步骤。 首先,让我们从安装开始。在“安装方法.txt”中,通常会包含以下步骤: 1. **下载Tomcat**:你可以从Apache官方网站...
【TOMCAT 服务器配置详解】 Tomcat 是一个开源的、免费的 Java 应用服务器,主要用于运行基于 Servlet 和 JSP 的 Web 应用程序。它由 Apache 软件基金会开发并维护,是实现 Java EE(现为Jakarta EE)Web 组件规范...
三、Tomcat Connector 的配置参数 Tomcat Connector 的配置参数包括: 1. maxThreads:Tomcat 使用线程来处理接收的每个请求。这个值表示 Tomcat 可创建的最大的线程数。默认值 200。 2. minSpareThreads:Tomcat ...
【标题】:Tomcat安装与配置要点和难点 在IT行业中,Apache Tomcat是一个广泛应用的开源Web服务器和Java Servlet容器,它实现了Java EE的Web部分,包括Servlet、JSP和WebSocket等规范。Tomcat的安装与配置是Java ...
- Tomcat提供了多种连接器类型,如NIO、APR/Libapr等。根据具体需求选择合适的连接器,可以优化I/O性能。 12. **资源池(Pooling)**: - 对于数据库连接等资源,可以通过JNDI配置连接池,提高资源利用率,减少连接...
内嵌的 Tomcat 容器是 Spring Boot 默认的 Web 服务器,使得我们可以无需额外配置即可运行 Java Web 应用。在本篇文章中,我们将探讨如何对 Spring Boot 内嵌的 Tomcat 进行个性化配置。 首先,Spring Boot 提供了 ...
《深入理解Tomcat源码分析1:Connector配置详解》 Tomcat,作为广泛使用的Java Servlet容器,其核心组件之一就是Connector,它负责处理Web服务器与客户端之间的通信。本篇文章将详细探讨Tomcat Connector的种类、...
本文将对 Tomcat 面试题进行解析,涵盖 Tomcat 的基础知识、配置文件、Connector 运行模式、部署方式、Servlet 实例创建原理等多个方面。 一、Tomcat 的基础知识 Tomcat 是一个基于 Java 语言的开源 Web 服务器,...
1. **配置`server.xml`**:这是Tomcat的主要配置文件,其中包含`Connector`元素,用于定义HTTP连接器。你可以在这里设置最大连接数(`maxConnections`),例如: ```xml <Connector port="8080" protocol=...
Tomcat源码中与connector相关的类位于org.apache.coyote包中,Connector分为以下几类: Http Connector, 基于HTTP协议,负责建立HTTP连接。它又分为BIO Http Connector与NIO Http Connector两种,后者提供非阻塞...
Tomcat Connector 运行模式还可以通过以下参数进行配置: * protocol:指定 Connector 使用的协议,例如 HTTP/1.1、org.apache.coyote.http11.Http11NioProtocol 等。 * redirectPort:指定 HTTPS 连接的端口号。 *...
本文将深入探讨Tomcat的配置,帮助读者理解如何优化和管理自己的Tomcat服务器。 首先,我们来看Tomcat的主配置文件——`server.xml`。这个文件位于Tomcat安装目录下的`conf`目录中,是整个Tomcat服务器的核心配置。...
在实际部署中,可以通过调整Tomcat的`server.xml`配置文件来启用NIO模式,例如设置`Connector`元素的`protocol`属性为`org.apache.coyote.http11.Http11NioProtocol`。此外,还可以配置连接池大小、选择器线程数、...
Tomcat 的 Connector 运行模式有 bio、nio 和 apr 三种: * bio 模式:传统的 Java I/O 操作,同步且阻塞 IO。 * nio 模式:JDK1.4 开始支持,同步阻塞或同步非阻塞 IO。nio 模式可以提高服务器的性能和可扩展性。 ...
从Tomcat 7开始,可以通过修改`server.xml`中的`Connector`配置来启用NIO模式: ```xml <Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol" connectionTimeout="20000" ...
写在前面 Tomcat作为最常用的Java Web服务器,随着并发量越来越...要想运行在该模式下,则直接修改server.xml里的Connector节点,修改protocol为如下配置。 protocol=org.apache.coyote.http11.Http11NioProtocol 重启
Tomcat采用NIO(非阻塞I/O)或BIO(阻塞I/O)模型,Coyote连接器负责这部分实现。NIO模型在高并发环境下表现出色,因为它可以处理大量并发连接,而无需为每个连接创建新线程。 四、Tomcat7的部署与管理 Tomcat7...