0
我有一個Tomcat應用程序正在運行,出於某種原因,我的一個servlet正在被擱置,而所有其他人都在響應請求時執行。爲Tomcat如何調試tomcat請求線程?
我的連接器的配置:
<Connector port="8008" protocol="HTTP/1.1"
maxThreads="50" minSpareThreads="5" maxSpareThreads="50"
enableLookups="false" acceptCount="100"
connectionTimeout="20000"
redirectPort="8443"
compression="off"
allowTrace="true"
compressionMinSize="128"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml,text/x-gwt-rpc; charset=utf-8,application/json; charset=utf-8,application/javascript" />
我GWT RPC的servlet保持在正在執行一個很長的請求響應。但是我在GWT之外創建了一個servlet(即一個普通的舊servlet),並且當我向這個servlet發送請求時,它將不會響應,直到長GWT請求結束。它實際上並沒有開始執行(我添加了日誌來看它是否真的開始執行,直到日誌gwt請求結束)。
如何調試Tomcat實例的線程池/入站請求隊列?
您是否在使用Eclipse或NetBeans等IDE?如果是這樣,您可以在打開調試的情況下啓動Tomcat,然後遠程連接,並在需要的地方設置斷點。你還需要有Tomcat源代碼。但是如何設置它,如果你沒有遠程調試的經驗,可能超出了SO的答案。 – 2012-04-18 00:03:18
在非gwt servlet請求正在等待查看它正在做什麼時執行線程轉儲。 – sourcedelica 2012-04-18 03:25:48
如何做線程轉儲? – 2012-04-18 12:58:04