2013-08-22 34 views

回答

16

这取决于你所使用接受请求的类型连接器上。在server.xml中有一个名为maxConnections的参数,可以将其配置为限制传入请求的数量。这里是description of maxConnections params for Tomcat 7

服务器将接受在任何给定的时间 进程的最大连接数。达到此数量后, 服务器将不会再接受任何连接,直到 连接数低于此值为止。操作系统仍然可以根据acceptCount设置接受连接。默认值 因连接器类型而异。为BIO默认是 maxThreads的值,除非一个执行器在这种情况下,默认将 是从执行程序maxThreads的值使用。对于NIO的默认值是10000 为APR /本地,默认为8192

注意,对于APR /原生Windows上,配置的值将 减少到1024最高倍数小于或等于到 maxConnections。这是出于性能原因而完成的。如果设置为-1 值时,MAXCONNECTIONS功能被禁用和连接 不计

+0

maxConnections定义最大连接数服务器不接受同时处理的最大数量的请求 – Prateek

+3

@Prateek不,它不。 Juned引用了这里的Tomcat文档。你所指的是'acceptCount'和listen backlog队列的组合。 – EJP

+0

@EJP但在我的答案中提到的tomcat文档页面指定maxThreads.please帮助我弄清楚如果我错了...... :) – Prateek

0

Tomcat的连接器可以被配置为只服务同时请求一定数量的 - 这是配置的server.xml中

MaxConnections属性
0

this forum和快速完整性检查:

Tomcat具有最大数量的并发线程,用于处理请求;这可以在conf/server.xml配置[为maxConnections和相关选项],并默认设置为50

+1

Tomcat不具有在默认情况下,连接器指定maxThreads服务器。xml配置。根据文档,maxThreads未指定时的默认值为200. https://tomcat.apache.org/tomcat-7.0-doc/config/http.html#Standard_Implementation也适用于Tomcat 6 – JanM

10

server.xml文件指定maxThreadsspecifies maximum number of simultaneous requests that can be handled..

<Connector port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" 
       enableLookups="false" redirectPort="4443" acceptCount="100" 
       debug="0" connectionTimeout="60000" 
       disableUploadTimeout="true" /> 

在Tomcat中7,

The maximum number of request processing threads to be created by this Connector, which therefore determines the maximum number of simultaneous requests that can be handled. If not specified, this attribute is set to 200.

编辑:如果执行与该连接器相关的,这个属性被忽略,因为连接器将使用执行而不是内部的线程池执行任务。

欲了解更多信息,请参阅此链接Tomcat 7 Doc

+0

如果定义了执行程序,则省略了有关被忽略的属性的最后一个句子。 – EJP

+0

更新了我的答案,这意味着maxThread值在maxConnections中使用。 – Prateek

+0

Tomcat可以处理的请求的上限是多少? –

相关问题