Tomcat的最大併發配置

Tomcat 默認配置的最大請求數是 150,也就是說同時支持 150 個併發。

 

 

     操作系統對於進程中的線程數有一定的限制:
      Windows 每個進程中的線程數不允許超過 2000
      Linux 每個進程中的線程數不允許超過 1000
      另外,在 Java 中每開啓一個線程需要耗用 1MB 的 JVM 內存空間用於作爲線程棧之用。

 

      Tomcat 默認的 HTTP 實現是採用阻塞式的 Socket 通信,每個請求都需要創建一個線程處理。

 

       Tomcat 還可以配置 NIO 方式的 Socket 通信,在性能上高於阻塞式的,每個請求也不需要創建一個線程進行處理,併發能力比前者高。但沒有阻塞式的成熟。
  

 

 

maxThreads="1500"  最大併發數 

 

minSpareThreads="100" 初始創建的線程數

 

maxSpareThreads="1000"一旦創建的線程超過這個值,Tomcat就會關閉不再需要的socket線程。

acceptCount="500" 指定當所有可以使用的處理請求的線程數都被使用時,可以放到處理隊列中的請求數,超過這個數的請求將不予處理

 

配置實例:

 

<Connector port="8080" protocol="HTTP/1.1"
               useBodyEncodingForURI="true" enableLookups="false" connectionTimeout="30000"
               maxConnections="2000" acceptCount="2000" maxThreads="1500"
               minSpareThreads="200" maxSpareThreads="1000" compression="on" compressionMinSize="2048"
               noCompressionUserAgents="gozilla, traviata" maxProcessors="1000" minProcessors="5" acceptorThreadCount="10" redirectPort="8443"  URIEncoding="UTF-8" />

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章