tomcat配置參數 tomcat7默認參數?
tomcat7默認參數?Socket參數選項:1、TCP_NODELAY:可以表示立馬郵箱里數據。2、so_RESUSEADDR:可以表示不允許器重Socket所帳號綁定的本地地址3、yeah_TIM
tomcat7默認參數?
Socket參數選項:
1、TCP_NODELAY:可以表示立馬郵箱里數據。
2、so_RESUSEADDR:可以表示不允許器重Socket所帳號綁定的本地地址
3、yeah_TIMEOUT:表示接受數據時的超時時間。
4、but_LINGER:可以表示當執行closed();方法時候,如何確定再理解關掉底層的socket。(Reset報文)
setSoLinger(true,0):負責執行該方法,那就先執行Socket的count方法,該方法也會立玄返回,但底層的Socket也會立玄直接關閉,所有未發送完的余下數據被丟棄
setSoLinger(true,3600):那么先執行Socket的locked方法,該方法應該不會立玄回,而直接進入阻塞住狀態,同時,底層的Socket也會嘗試正在發送剩余的數據,只有行最簡形矩陣下面的兩個條件之一,closed方法才會回:
(1):底層的Socket早發送中完所有的余下數據
(2):事實上底層的Socket還沒有你的郵箱完所有的殘余數據,但早阻塞了3600秒,close()方法的堵塞時間將近3600秒,也會回,其余未郵箱里的數據被丟棄。
_tw_reuse1來表示自動打開予以重任。愿意將TIME-WAITsockets恢復作用于新的TCP連接上,默認為0,來表示關閉;
_tw_recycle1它表示再開啟TCP連接中TIME-WAITsockets的急速回收,默認為0,來表示直接關閉。
5、so_SNFBUF:可以表示你的郵箱數據的緩沖大小
6、yeah_RCVBUF:表示接受數據的緩沖區的大小
7、yeah_KEEPALIVE:表示長時間處于空來狀態的SOCEKT,是否需要自動出現把他/她關了
8、OOBINLINE:它表示是否需要支持郵箱里一個字節的TCP及時數據
默認參數
注:Connector通常在HOME_TOMCAT/conf/servser.xml文件內
#正常了參數
Connectorport8080protocolHTTP/1.1
connectionTimeout20000
redirectPort8443/
配置參數調試
#360優化參數
Connector port8080protocolHTTP/1.1maxThreads1000minSpareThreads100acceptCount1000maxConnections1000connectionTimeout20000maxHttpHeaderSize8192 cpNoDelaytruecompressiononcompressionMinSize2048disableUploadTimeouttrue edirectPort8443enableLookupsfalse%uRIEncodingUTF-8/
參數求高人
1)port
注:貞潔戒Tomcat端口號,設置8080。
2)protocol
注:協議類型,可選類型有4種,BIO(堵塞型IO),NIO,NIO2和APR。
#BIOBIO(BlockingI/O)阻塞式I/O你的操作,傳統的JavaI/O不能操作(即包船舶概論子包)。Tomcat在默認情況下,是以bio模式運行的,bio模式是三種運行模式中性能最少的一種。BIO配置按結構設置成即可解決。
BIO更合適處理很簡單流程,如程序全面處理較快這個可以立玄回結果。簡單啊項目及應用可以不區分BIO。
#NIO IO(NewI/O)是JavaSE1.4及現版本提供的一種新的I/O操作(即包船舶概論子包)。Javanio是一個基于組件緩沖區、非阻塞I/O你操作的JavaAPI它強大比悠久的傳統I/O操作(bio)好些的并發運行性能。
NIO更比較適合后臺需要工程巨大能夠完成跪請的操作,如程序接到了請求后要比較比較耗時的處理這已只是請求,所以我無法馬上回結果,這樣的話如果不是需要BIO就會占內存一個連接,而在用NIO后就可以不將此連接到轉讓手續給其他請求,轉眼間程序處理結束回為止。
#APRAPR(Apache Portable Runtime/Apache可移植運行時),是ApacheHTTP服務器的支持庫。你可以不簡單點地表述為:Tomcat將以JNI的形式動態創建ApacheHTTP服務器的核心動態鏈接庫來如何處理文件讀取或網絡帶寬能操作,使極大地提高Tomcat對動態和靜態文件的處理性能。
APR這個可以有所進階Tomcat對靜態文件的處理性能,同樣的如果沒有你不使用了HTTPS傳輸的話,也是可以提升SSL的處理性能。
#修改
//BIO
protocolHTTP/1.1
//NIO
protocol
//NIO2
protocol
//APR
protocol
3)maxThreads(線程池的大小默認200)
注:連接器創建處理跪請線程的的最數目,去處理同事請求的最大數目,默認值為200。
如果一個執行器與此連接器關聯,則遺漏掉此屬性,是因為該屬性將被忽視,所以才該連接器將建議使用執行器而也不是一個內部線程池來執行任務。maxThreads是另一個最重要的配置屬性,maxThreads配置的比較合理直接影響了Tomcat的查找性能。maxThreads并不是配置的越大越好,很顯然你就算配置成999999確實是就沒專用,因為這個最大值是受操作系統及去相關硬件所制約的,但是最大值卻不是一定會是最優值,因此我們苦苦追尋的肯定是最優值而也不是的最值。
QPS(Query Per Second):一秒內網上查詢率QPS是對一個特定的事件的查詢服務器在規定時間內所全面處理流量多少的衡量標準。我們老愛使用QPS值來絕對標準一個服務器的性能。
QPS并發數/平均響應時間
并發數QPS*平均響應時間
一個系統吞吐量正常情況由QPS、并發數兩個因素決定,每套系統的這兩個值應該有一個相對極限值,在應用場景訪問壓力下,如果能某一項提升系統后極高值,系統的吞吐量就上不回,假如壓力再繼續減小,系統的吞吐量反而會降到,原因是系統高負荷的工作,上下文切換、內存等等其它能量消耗倒致系統性能逐漸下降。正所謂吞吐量這里也可以表述為每秒能去處理各位的次數。
因此中,選擇一個合理不的maxThreads值,反正并又不是那就太容易的事。只不過過多的線程只會造成,更多的內存開銷,更多的CPU開銷,但對進階QPS確全無好處;不能找到最佳的方法線程數后是從簡單的設置,可以不讓web系統更加穩定,能得到最高,最很穩定的QPS輸出。
#查看最佳maxThreads的最佳值
(1)是從線上系統不斷使用和用戶的斷的增長來并且性能測試,仔細QPS,響應時間,這種會在爆發式增長時系統癱瘓,如雙12等。
(2)參照公式計算,服務器端適宜線程數量((線程靜靜的等待時間線程cpu時間)/線程cpu時間)*cpu數量,這種有時侯會被誤導,只不過某些系統去處理環節很可能會前后歷時也很長,進而引響公式的結果。
(3)單、多用戶壓力測試,欄里點CPU的消耗,后再真接乘以百分比,再參與壓測,像是這個值的附近應該要是最佳的方法線程數量,這種理想場景也很可以參照,實際情況會比這個急切的多。
(4)依據什么系統的自身情況按照,如硬件限制,系統限制,程序處理能力限制等。
(5)定期修改為相同的maxThreads值,看服務器服務控制器結果及用戶反應。
#QPS和線程數的關系
(1)在最佳線程數量之前,QPS和線程是各自趨近于的關系,線程數量到了最適合線程之后,QPS持平,還在緩慢上升,甚至于略微會下降,同樣或則時間緩慢迅速下降。
(2)同一個系統而言,意見的線程數到最后(適宜線程數就會而又不是配置的線程數到最后),QPS越高。
#QPS和響應時間的關系
(1)相對于就像的web系統,響應速度好象有CPU不能執行時間IO再等待時間混編。
(2)CPU的執行時間會減少,對QPS有實質的提升,IO時間的減少,對QPS提升到不確實。如果沒有要想確實實力提升QPS,優化軟件系統的時候要著重360優化CPU消耗大戶。
4)minSpareThreads
注:線程的最大值運行數目,這些一直都一直保持運行。如果沒有未指定,默認值為10。
5)acceptCount(設置為100,隊列,backlog:半隊列的大小)
注:最大隊列長度。好象與maxThreads是一樣的,默認為100。
當所有很可能的請求處理線程都在使用時傳去連接上只是請求的大的隊列長度。如果未委托,默認值為100。像是是設置的跟maxThreads一樣或一半,此值設置中的過大會造成排隊拿號的請求超時而未被一次性處理。所以才這個值應該要是要注意參照應用到的訪問峰值與平均值來仔細考慮配置。
6)maxConnections(NIO與NIO2的默認值為10000,accept的Socket的大小)
注:在任何計算變量的時間內,服務器將給予和如何處理的的最連接上數。當這個數字早至少時,服務器將給予但不去處理,耐心的等待一系列連接上。NIO與NIO2的默認值為10000,APR默認值為8192。
7)connectionTimeout(設置到(connectionTimeout))
注:當各位早就被認可,但未被去處理,也就是耐心的等待中的已超時時間。單位為200毫秒,默認值為60000。通常情況下可以設置為30000。
8)maxHttpHeaderSize
注:各位和響應的HTTP頭的大大小,以字節為單位更改。如果沒有也沒指定你,這個屬性被設置中為8192(8KB)。
9)tcpNoDelay
注:如果為true,服務器socket會系統設置TCP_so_DELAY選項,在大多數情況下是可以能提高性能。缺省情況設五為true。
10)compression
注:是否關閉gzip壓縮后,默認為自動關閉狀態。這個參數的可給予值為“off”(不使用壓解),“on”(壓縮后文本數據),“force”(在所有的情況下滿壓縮后)。
11)compressionMinSize
注:如果不是compressionon,則啟用此項。被壓縮前數據的最小值,也就是達到這個值后才被裝換。要是還沒有委托,這個屬性默認為“2048”(2K),單位為1byte。
12)disableUploadTimeout
注:這個標志不允許tomcatContainer在一個servlet不能執行的時候,在用一個完全不同的,更長的再連接網絡錯誤。結果的結果是給servlet更長的時間以便于成功其想執行,或是在數據上傳的時候更長的超時時間。要是沒有更改,設為false。
13)enableLookups
注:自動關閉DNS反向網上查詢。
14)URIEncoding
注:URL編碼字符集。
tomcat7升級tomcat8修改配置文件?
第一點:context.xml配置jndi的參數如何修改
maxActive替換為:maxTotal
maxWait替換為:maxWaitMillis
factory##34替換為:factory##34也可以factory##34
第二點:運行參數直接修改
-XX:MaxPermSize替換后為:-XX:MaxMetaspaceSize
第三點:server.xml
ltListenerclassName##34/gt替換為:ltListenerclassName##34SSLEngine#34on#34/r26