tomcat設置最佳線程數(shù) 監(jiān)控tomcat運行情況,有什么好的工具?
監(jiān)控tomcat運行情況,有什么好的工具?Visual vm遠程監(jiān)控tomcatdump內(nèi)存信息或kill-3 PID(Tomcat)分析線程情況。如果長時間不釋放,這些線程可能會看到錯誤的代碼。to
監(jiān)控tomcat運行情況,有什么好的工具?
Visual vm遠程監(jiān)控tomcatdump內(nèi)存信息或kill-3 PID(Tomcat)分析線程情況。如果長時間不釋放,這些線程可能會看到錯誤的代碼。
tomcat支持多少并發(fā)?
可以配置Tomcat的最大并發(fā)數(shù)。實際中,最大并發(fā)數(shù)與硬件性能和CPU數(shù)量有很大關系。更好的硬件和更多的處理器將使Tomcat支持更多的并發(fā)性。
Tomcat 的默認HTTP實現(xiàn)是使用阻塞套接字通信,每個請求都需要通過創(chuàng)建一個線程來處理。當一個進程有500個線程運行時,性能已經(jīng)很低了。Tomcat默認配置的最大請求數(shù)是150,這意味著同時支持150個并發(fā)請求。能承載多少并發(fā)取決于硬件配置。CPU越多性能越高,分配給JVM的內(nèi)存越多性能越高,但也會增加GC的負擔。當一個應用程序有超過250個并發(fā)時,應該考慮應用服務器集群。操作系統(tǒng)對進程中的線程數(shù)量有一定的限制:
Windows每個進程不能有超過2000個線程。
Linux中每個進程的線程數(shù)不允許超過1000。
Java中,每個線程需要消耗1MB的JVM內(nèi)存空間用于線程棧,這里也要考慮。
tomcat是多線程還是單線程?
內(nèi)部使用的是多線程。
但是只能幫助我們達到要求的水平。換句話說,一個請求和一個線程或者多個請求和一個線程。
如果是單線程,它只能處理一個用戶 的要求。如果不采用多線程機制,當數(shù)百人同時訪問一個web應用程序時,tomcat將不得不排隊進行串行處理,因此客戶端只需 我受不了訪問速度。
一臺tomcat服務器可以支持多少的并發(fā)?
可以配置Tomcat的最大并發(fā)數(shù)。實際中,最大并發(fā)數(shù)與硬件性能和CPU數(shù)量有很大關系。更好的硬件和更多的處理器將使Tomcat支持更多的并發(fā)性。
Tomcat 的默認HTTP實現(xiàn)是使用阻塞套接字通信,每個請求都需要通過創(chuàng)建一個線程來處理。當一個進程有500個線程運行時,性能已經(jīng)很低了。Tomcat默認配置的最大請求數(shù)是150,這意味著同時支持150個并發(fā)請求。能承載多少并發(fā)取決于硬件配置。CPU越多性能越高,分配給JVM的內(nèi)存越多性能越高,但也會增加GC的負擔。當一個應用程序有超過250個并發(fā)時,應該考慮應用服務器集群。操作系統(tǒng)對進程中的線程數(shù)量有一定的限制。:
Windows每個進程不能有超過2000個線程。
Linux中每個進程的線程數(shù)不允許超過1000。
在Java中,每個線程需要為線程棧消耗1MB的JVM內(nèi)存空間,這里也要考慮。