tomcat優化

一、鏈接器優化: 
在tomcat配置文檔server.xml中的配置中,和鏈接數相關的參數有: 
maxThreads: 
Tomcat使用線程來處理接收的每一個請求。這個值表示Tomcat可建立的最大的線程數。默認值200。java

acceptCount: 
指定當任何可以使用的處理請求的線程數都被使用時,可以放處處理隊列中的請求數,超過這個數的請求將不予處理。默認值10。 
minSpareThreads: 
Tomcat初始化時建立的線程數。默認值4。 
maxSpareThreads: 
一旦建立的線程超過這個值,Tomcat就會關閉再也不須要的socket線程。默認值50。 
enableLookups: 
是否反查域名,默認值爲true。爲了提升處理能力,應配置爲false 
connnectionTimeout: 
網絡鏈接超時,默認值60000,單位:毫秒。配置爲0表示永不超時,這樣配置有隱患的。一般可配置爲30000毫秒。 
maxKeepAliveRequests: 
保持請求數量,默認值100。 
bufferSize: 
輸入流緩衝大小,默認值2048 bytes。 
compression: 
壓縮傳輸,取值on/off/force,默認值off。 
其中和最大鏈接數相關的參數爲maxThreads和acceptCount。假如要加大併發鏈接數,應同時加大這兩個參數。web server容許的最大鏈接數還受制於操做系統的內核參數配置,一般Windows是2000個左右,Linux是1000個左右。 
三、tomcat中如何禁止和容許列目錄下的文檔 
在{tomcat_home}/conf/web.xml中,把listings參數配置成false便可,以下: 
<servlet> 
... 
<init-param> 
<param-name>listings</param-name> 
<param-value>false</param-value> 
</init-param> 
...
</servlet> 
四、tomcat中如何禁止和容許主機或IP地址訪問 
<Host ...> 
  ... 
  <Valve className="org.apache.catalina.valves.RemoteHostValve" 
         allow="*.mycompany.com,www.yourcompany.com"/> 
  <Valve className="org.apache.catalina.valves.RemoteAddrValve" 
         deny="192.168.1.*"/> 
  ... 
</Host> 
web

2tomcat的三種運行模式apache

tomcat的運行模式有3種.修改他們的運行模式.3種模式的運行是否成功,能夠看他的啓動控制檯,或者啓動日誌.或者登陸他們的默認頁面http://localhost:8080/查看其中的服務器狀態。 tomcat

1)bio 服務器

默認的模式,性能很是低下,沒有通過任何優化處理和支持. 網絡

2)nio 併發

利用java的異步io護理技術,no blocking IO技術. 異步

想運行在該模式下,直接修改server.xml裏的Connector節點,修改protocol爲 socket

 <Connector port="80" protocol="org.apache.coyote.http11.Http11NioProtocol" 
	connectionTimeout="20000" 
	URIEncoding="UTF-8" 
	useBodyEncodingForURI="true" 
	enableLookups="false" 
	redirectPort="8443" />

啓動後,就能夠生效。 ide

3)apr 

安裝起來最困難,可是從操做系統級別來解決異步的IO問題,大幅度的提升性能. 

必需要安裝apr和native,直接啓動就支持apr。

相關文章
相關標籤/搜索